<Directory />
Options FollowSymLinks
AllowOverride All
You should never set AllowOverride All
for the entire filesystem (ie. inside the <Directory />
container). This should be (and defaults to) AllowOverride None
for a reason. And Apache explicitly warns against doing this.
Setting AllowOverride All
here will cause Apache to scan for .htaccess
files all the way up the directory tree to the root.
The most likely reason why your .htaccess
file is not being processed is that you have a more specific <Directory>
container (possibly in a <VirtualHost>
) elsewhere in your config that has set AllowOverride None
, overriding the setting in <Directory />
for that directory tree.
However, by setting AllowOverride All
in <Directory />
then Apache is quite likely scanning for .htaccess
files in all parent directories which could result in performance and security issues.
<Directory />
:
Deny from all
You must have a more specific <Directory>
container somewhere since your site is presumably accessible? (I assume you are not getting a "403 Forbidden" response?)