it-swarm.com.de

Wie kann man mod_rewrite auf jedem Betriebssystem aktivieren?

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.

42
John

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.

62
Pekka 웃

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
57
FarmerGedden

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>

10
Sadee

Nein, das solltest du nicht brauchen. mod_rewrite ist ein Apache-Modul. Es hat nichts mit php.ini zu tun.

1
Jason Lewis

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

0
Hassan Saeed

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/

0
Marco Schaffner

network solutions bietet den Rat an, eine php.ini im cgi-bin zu platzieren, um mod_rewrite zu aktivieren

0
jeremy woods