Estou executando um servidor LAMP no Fedora 13 que está funcionando bem; no entanto, acabei de adicionar um arquivo ".htaccess" à pasta docroot do meu site atual que está sendo completamente ignorada.
Eu tentei meia dúzia de testes diferentes, incluindo este:
RewriteEngine on
RewriteBase /
RewriteRule ^.*$ index.php
Mas as imagens e todas as outras páginas carregam bem, e os arquivos inexistentes ainda são 404. Eu também tentei isso:
order deny,allow
deny from all
Mas cada página ainda carrega muito bem. Novamente, o arquivo .htaccess é simplesmente ignorado 100%.
Colocamos nossos registros de host virtual em /etc/httpd/conf.d/virtual.conf. Se parece com isso:
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>
O que mais poderia estar causando o nosso servidor ignorar completamente o .htaccess
arquivo?
Editar:
Alterei o arquivo .htaccess para acima para demonstrar melhor que minhas alterações estão sendo ignoradas. Observe que eu tentei exatamente o mesmo arquivo .htaccess no servidor de produção e funcionou bem.
Edição 2:
OK, tenho novas informações! Apenas para fins de teste, eu passei e mudei temporariamente TODAS as diretivas "AllowOverride" para AllowOverride All
. Eu descobri que a primeira entrada do Diretório parece dominar todas as outras:
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
Quando mudei isso para AllowOverride All
, meus arquivos .htaccess começam a entrar em vigor. É como se todas as outras AllowOverride All
diretivas nos meus arquivos de configuração estivessem sendo ignoradas!
O que da??