mod_rewrite nie dzia

Konfiguracja serwerów, usług, itp.
djkrss
Posty: 6
Rejestracja: 08 listopada 2009, 21:21

mod_rewrite nie działa?

Post autor: djkrss »

Witam.
Uruchomiłem funkcję mod_rewrite na moim serwerze, lecz niestety ona nie działa. Plik .htaccess na serwerze jest. Zastanawia mnie również dlaczego plik httpd.conf mam pusty.

Dane o systemie: Apache/2.2.9 (Debian) PHP/5.2.6-1+lenny3 with Suhosin-Patch Server.
Awatar użytkownika
jasiekmarc
Posty: 88
Rejestracja: 27 września 2009, 20:05
Lokalizacja: Wrocław

Post autor: jasiekmarc »

A edytowałeś /etc/apache2/sites-available/default?

Trzeba ustawić

Kod: Zaznacz cały

 9         <Directory /var/www/>
 10                 Options Indexes FollowSymLinks MultiViews
 11                 AllowOverride All
 12                 Order allow,deny
 13                 allow from all
 14         </Directory>
Awatar użytkownika
lessmian2
Member
Posty: 1088
Rejestracja: 30 kwietnia 2008, 19:38
Lokalizacja: Kraków

Post autor: lessmian2 »

djkrss pisze:Uruchomiłem funkcję mod_rewrite na moim serwerze
W jaki sposób?
djkrss pisze:niestety ona nie działa
Jeśli uruchomiłeś moduł poprawnie, to są jednak większe szanse że moduł działa, a problem leży po Twojej stronie.
djkrss pisze:Plik .htaccess na serwerze jest
Plik .htaccess to nie wszystko.
djkrss pisze:Zastanawia mnie również dlaczego plik httpd.conf mam pusty
Bo w Debianie głównym plikiem konfiguracyjnym jest /etc/apache2/apache2.conf, ot taki kaprys deweloperów ]jasiekmarc[/b], powinieneś edytować plik konfiguracyjny odpowiadający za Twoją stronę (niekoniecznie to musi być default, ale w standardowej konfiguracji tak będzie). Zapoznaj się z dyrektywą AllowOverride - domyślna konfiguracja powoduje że plik .htaccess jest pomijany. Dodaj ją do swojej konfiguracji, przeładuj Apache i sprawdź ponownie.
djkrss
Posty: 6
Rejestracja: 08 listopada 2009, 21:21

Post autor: djkrss »

jasiekmarc i lessmian2, serdeczne dzięki za pomoc. Nie powiem czy działa, bo po drodze napotkałem na jeszcze jeden problem - nie wiem jak sprawić, by domyślnym katalogiem plików był /var/www/httpdocs, a nie /var/www.
Awatar użytkownika
lessmian2
Member
Posty: 1088
Rejestracja: 30 kwietnia 2008, 19:38
Lokalizacja: Kraków

Post autor: lessmian2 »

Musisz edytować plik konfiguracyjny Apache2 odpowiadający z Twoją stronę. Zmieniasz dyrektywę DocumentRoot:

Kod: Zaznacz cały

DocumentRoot /var/www/httpdocs
Następnie konfigurujesz katalog:

Kod: Zaznacz cały

<Directory /var/www/httpdocs>
         Options -Indexes FollowSymLinks -MultiViews -Includes
         DirectoryIndex index.php index.html index.htm
         AllowOverride All
         Order allow,deny
         allow from all
</Directory>
Następnie sprawdzasz czy konfiguracja jest ok:

Kod: Zaznacz cały

apache2ctl -t
Jeśli jest ok, restartujesz Apache2 i powinno śmigać.
ODPOWIEDZ