Jak włączyć mod_rewrite dla Apache 2.2

Mam świeżą instalację Apache 2.2 na mojej maszynie Vista, wszystko działa dobrze, z wyjątkiem mod rewrite.

I've uncommented

LoadModule rewrite_module modules/mod_rewrite.s

ale żadna z moich reguł przepisywania nie działa, nawet tak proste jak

RewriteRule not_found %{DOCUMENT_ROOT}/index.php?page=404

Wszystkie reguły, których używam działają na moim hostingu, więc powinny być ok, więc moje pytanie brzmi, czy jest jakaś ukryta rzecz w konfiguracji apache, która mogłaby zablokować mod rewrite?

W mojej sytuacji, miałem

RewriteEngine On

w moim .htaccess, wraz z załadowanym modułem, i nie działało.

Rozwiązaniem mojego problemu było edytowanie mojego wpisu vhost, aby inlcude

AllowOverride all

w sekcji `` dla strony, o której mowa.

Komentarze (6)

Właśnie zauważyłem, że powiedziałeś mod_rewrite.s zamiast mod_rewrite.so - mam nadzieję, że to'literówka w twoim pytaniu, a nie w pliku httpd.conf! :)

Jestem bardziej przyzwyczajony do używania Apache na Linuksie, ale musiałem to zrobić innego dnia.

Po pierwsze, zajrzyj do swojego katalogu instalacyjnego Apache'a. (Zakładam, że zainstalowałeś go w katalogu "C:Program Files").

Zajrzyj do folderu: "C:™Program Files™Apache Software Foundation™Apache2.2™modules" i upewnij się, że znajduje się tam plik o nazwie mod_rewrite.so. (Powinien być, jest on dostarczany jako część domyślnej instalacji.

Następnie otwórz plik "C:\Program Files\Apache Software Foundation\Apache2.2\conf" i otwórz httpd.conf. Upewnij się, że linia:

#LoadModule rewrite_module modules/mod_rewrite.so

jest odkomentowana:

LoadModule rewrite_module modules/mod_rewrite.so

Ponadto, jeśli chcesz włączyć RewriteEngine domyślnie, możesz dodać coś w stylu


    RewriteEngine On

na końcu swojego pliku httpd.conf.

Jeśli nie, upewnij się, że określasz

RewriteEngine On

gdzieś w swoim pliku .htaccess.

Komentarze (2)

Jest oczywiście więcej niż jeden sposób, aby to zrobić, ale sugerowałbym użycie bardziej standardowego:

ErrorDocument 404 /index.php?page=404
Komentarze (0)