Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Apache 2.2.3 i mod_rewrite, nie czyta plików .htaccess
Insert
post 25.08.2008, 11:18:42
Post #1





Grupa: Zarejestrowani
Postów: 27
Pomógł: 0
Dołączył: 17.12.2007

Ostrzeżenie: (0%)
-----


Witajcie.

Mam dość dziwny problem. Na Apache 2.2.3 jest dorzucony mod_rewrite (komendą a2enmod rewrite, która po zainstalowaniu modułu wyrzuca informację, że jest on włączony). phpinfo() też wypluwa mi mod_rewrite jako aktywny moduł, jeden z wielu.

Pomimo tego serwer w ogóle nie czyta plików .htaccess - przy przepisywaniu URLi nie działa, nawet nie wyrzuca internalki 500. Plik .htaccess mam dobry, działał na prawie takim samym oprogramowaniu (nieznaczne różnice w wersjach apache i php).

Nie kombinowałem nic z plikiem apache2.conf, ponieważ słyszałem, że to podobno nic nie da w tym przypadku. Apache i php nie kompilowałem - poleciały z binarek.

Ma ktoś może jakiś pomysł?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
wookieb
post 25.08.2008, 11:23:42
Post #2





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




W sekcji directory httpd.conf zmien AllowOverride na All.
Sprawdź też czy masz AccessFileName .htaccess

Ten post edytował wookieb 25.08.2008, 11:24:25


--------------------
Go to the top of the page
+Quote Post
Insert
post 25.08.2008, 11:47:25
Post #3





Grupa: Zarejestrowani
Postów: 27
Pomógł: 0
Dołączył: 17.12.2007

Ostrzeżenie: (0%)
-----


Ok, lecz problem polega na tym, że mój httpd.conf jest pusty. A w apache2.conf mam 2 dyrektywy <Directory>. Jedna do /usr/share/apache2/icons a druga /usr/share/apache2/error, w obydwu ustawiłem AllowOverride All - nie pomogło.

Na początku pliku dodałem:
CODE
<Directory "/">
Options Indexes MultiViews
AllowOverride All
Order allow,deny
Allow from all
</Directory>

Nie pomogło. Za każdym razem kiedy zmieniałem coś w konfigach restartowałem apache.

Cytat
Sprawdź też czy masz AccessFileName .htaccess

Mam.

W katalogu głównym serwera mam plik test.php robiący phpinfo();. Obok niego wisi .htaccess o następującej zawartości:
CODE
RewriteEngine On
RewriteRule test.html test.php [L]

Jak wpiszę w adresie IP/test.html to wywala 404.






EDYCJA - PROBLEM ROZWIĄZANY
Nie trzeba ruszać żadnych plików konfiguracyjnych, prócz jednego:
/etc/apache2/sites-available/default
W tym pliku należy zmienić w dwóch miejscach (wewnątrz definicji <Directory ...>) AllowOverride na All

Ten post edytował Insert 25.08.2008, 18:15:06
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 24.07.2025 - 16:09