Estoy ejecutando un servidor LAMP en Fedora 13 que funciona bien; sin embargo, acabo de agregar un archivo ".htaccess" a la carpeta docroot de mi sitio actual que se ignora por completo.
He probado media docena de pruebas diferentes, incluida esta:
RewriteEngine on
RewriteBase /
RewriteRule ^.*$ index.php
Pero las imágenes y todas las demás páginas se cargan bien, y los archivos inexistentes siguen siendo 404. También probé esto:
order deny,allow
deny from all
Pero cada página todavía se carga bien. Nuevamente, el archivo .htaccess simplemente se ignora al 100%.
Ponemos nuestros registros de host virtual en /etc/httpd/conf.d/virtual.conf. Se parece a esto:
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>
¿Qué más podría estar causando que nuestro servidor IGNORE completamente el .htaccess
archivo?
Editar:
Cambié el archivo .htaccess a arriba para demostrar mejor que mis cambios están siendo ignorados. Tenga en cuenta que probé exactamente el mismo archivo .htaccess en el servidor de producción y funcionó bien.
Edición 2:
OK, tengo nueva información! Solo para fines de prueba, revisé y cambié temporalmente TODAS las directivas "AllowOverride" a AllowOverride All
. Descubrí que la primera entrada del Directorio parece dominar a todas las demás:
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
Cuando cambié eso a AllowOverride All
, mis archivos .htaccess comienzan a tener efecto. ¡Es como si AllowOverride All
se ignoraran todas las demás directivas en mis archivos de configuración!
¿¿Lo que da??