Ich verwende einen LAMP-Server unter Fedora 13, der einwandfrei funktioniert. Ich habe jedoch gerade eine ".htaccess" -Datei zum Docroot-Ordner meiner aktuellen Site hinzugefügt, die vollständig ignoriert wird.
Ich habe ein halbes Dutzend verschiedene Tests ausprobiert, darunter diesen:
RewriteEngine on
RewriteBase /
RewriteRule ^.*$ index.php
Aber Bilder und alle anderen Seiten laden gut, und nicht existierende Dateien noch 404. Ich habe auch Folgendes versucht:
order deny,allow
deny from all
Trotzdem wird jede Seite gut geladen. Auch hier wird die .htaccess-Datei einfach zu 100% ignoriert.
Wir legen unsere virtualhost-Datensätze in /etc/httpd/conf.d/virtual.conf ab. Es sieht aus wie das:
NameVirtualHost *
<VirtualHost *>
ServerName intranet
DocumentRoot /var/www/default
<Directory "/var/www/default">
Options FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
<VirtualHost *>
ServerName ourwebsite.com
DocumentRoot /var/www/html/ourwebsite.com/docroot
<Directory "/var/www/html/ourwebsite.com/docroot">
Options FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
Was könnte sonst dazu führen, dass unser Server die .htaccess
Datei komplett ignoriert ?
Bearbeiten:
Ich habe die .htaccess-Datei in oben geändert, um besser zu demonstrieren, dass meine Änderungen ignoriert werden. Beachten Sie, dass ich genau die gleiche .htaccess-Datei auf dem Produktionsserver ausprobiert habe, und es hat gut funktioniert.
Bearbeiten 2:
OK, ich habe neue Informationen! Nur zu Testzwecken habe ich JEDE "AllowOverride" -Richtlinie vorübergehend in geändert AllowOverride All
. Ich fand heraus, dass der allererste Verzeichniseintrag alle anderen zu überwältigen scheint:
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
Wenn ich dies in ändere, AllowOverride All
werden meine .htaccess-Dateien wirksam. Es ist so, als würden alle anderen AllowOverride All
Anweisungen in meinen Konfigurationsdateien ignoriert!
Was gibt??