I'm running a website with Joomla on a dedicated server (Debian), and i've read that moving .htaccess rules to apache2 configuration files may result in a good performance improvement (Apache HTTP Server Tutorial: .htaccess files).
Main configuration file in /etc/apache2: apache2.conf
In apache2.conf there are, among other directives that i'am able to understand:
AccessFileName .htaccess
and
Include sites-enabled/
The server hosts just one website. In sites-enabled there is another file including additional directives, 000-default:
DocumentRoot /var/www
<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
Running a "locate .htaccess" through shell returns some results: 2 files under /usr/share/phpmyadmin/ and other results under the directories for the website: /var/www.
I've read how to use Directory block to include htaccess rules into an apache configuration file, but i've mainly three doubts:
1) Where should i insert htaccess rules, in apache2.conf or in 000-default?
2) As the performance improvements are due to apache lookups reduction for htaccess files in the main directory and in subdirectories, which directive should i modify?
AccessFileName .htaccess
or
AllowOverride All
or both? And about AllowOverride All, in which Directory block in 000-default?
3) After disabling AllowOverride All, shall i include the directives of htaccess for /usr/share/phpmyadmin too, even with DocumentRoot /var/www instruction?