Wenn ich es richtig verstanden habe, muss ich etwas in httpd.config
einfügen, um mod_rewrite zu aktivieren. Wenn dies wahr ist, was muss ich in httpd.conf
oder Apache.conf
eingeben? Bitte seien Sie betriebssystemspezifisch.
Nein, mod_rewrite
ist ein Apache-Modul und hat nichts mit PHP zu tun.
Um das Modul zu aktivieren, muss die folgende Zeile in httpd.conf
aktiv sein:
LoadModule rewrite_module modules/mod_rewrite.so
um zu sehen, ob es bereits aktiv ist, legen Sie eine .htaccess
-Datei in ein Webverzeichnis mit der Zeile
RewriteEngine on
wenn dies funktioniert, ohne einen internen Serverfehler von 500 zu erzeugen, und die .htaccess
-Datei analysiert wird, funktioniert das Umschreiben der URL.
Nur ein Jahr für Leute, die mod_rewrite unter Debian mit Apache2 aktivieren:
So prüfen Sie, ob Mod_rewrite aktiviert ist:
Suchen Sie in mods_enabled nach einer Verknüpfung zum Modul, indem Sie ausführen
ls /etc/Apache2/mods-enabled | grep rewrite
Wenn dies rewrite.load
ausgibt, ist das Modul aktiviert. (Hinweis: Ihr Pfad zu Apache2 ist möglicherweise nicht/etc /, obwohl dies wahrscheinlich ist.)
Um mod_rewrite zu aktivieren, falls noch nicht vorhanden :
Aktivieren Sie das Modul (erstellt im Wesentlichen den Link, den Sie oben gesucht haben):
a2enmod rewrite
Laden Sie alle Apache-Konfigurationsdateien neu:
service Apache2 restart
In meinem Fall ist ein Problem aufgetreten, obwohl alle diese Konfigurationen vorgenommen wurden (@Pekka hat Änderungen in den Dateien httpd.conf und .htaccess erwähnt). Es wurde erst nach dem Hinzufügen behoben
<Directory "project/path">
Order allow,deny
Allow from all
AllowOverride All
</Directory>
an die virtuelle Hostkonfiguration in der vhost-Datei
Bearbeiten am 29/09/2017 (Für Apache 2.4 <) Verweise diese Antwort
<VirtualHost dropbox.local:80>
DocumentRoot "E:/Documenten/Dropbox/Dropbox/dummy-htdocs"
ServerName dropbox.local
ErrorLog "logs/dropbox.local-error.log"
CustomLog "logs/dropbox.local-access.log" combined
<Directory "E:/Documenten/Dropbox/Dropbox/dummy-htdocs">
# AllowOverride All # Deprecated
# Order Allow,Deny # Deprecated
# Allow from all # Deprecated
# --New way of doing it
Require all granted
</Directory>
Nein, das solltest du nicht brauchen. mod_rewrite
ist ein Apache-Modul. Es hat nichts mit php.ini
zu tun.
wenn es mit der Hosting-Site zu tun hat, frag bei deinem Hosting nach oder wenn du es auf einem lokalen Computer aktivieren möchtest, dann überprüfe dieses Youtube-Tutorial Schritt für Schritt zum Aktivieren des Rewrite-Moduls in Apache https://youtu.be/xIspOX9FuVU t = 1m43s
Wamp-Server-Symbol -> Apache -> Apache-Module und aktivieren Sie die Option zum Umschreiben des Moduls. Diese Option sollte aktiviert sein. Danach müssen jedoch alle Dienste neu gestartet werden
Das Modul rewrite_module ist in den meisten Fällen im Server integriert
Verwenden Sie .htaccess
Verwenden Sie den Mod Rewrite Generator unter http://www.generateit.net/mod-rewrite/
network solutions bietet den Rat an, eine php.ini im cgi-bin zu platzieren, um mod_rewrite zu aktivieren