Archivo .htaccess
.htaccess vs Archivos de configuración
La mejor forma de modificar la configuración de Apache es utilizando los archivos de configuración y las directivas. Esta es, de hecho, la forma más eficiente y “limpia”.
Editar los archivos .htaccess puede ser útil en determinados entornos, aunque debemos tener en cuenta que Apache intentará leer en cada petición dicho archivo si lo tenemos habilitado para ese sitio (lo que conlleva unos pocos ms de retraso y puede sobrecargar el servidor en algunas situaciones).
Teniendo el archivo de configuración de sitio de la siguiente forma:
<Directory "/var/www/web1/docs">
Options -Indexes
</Directory>
El resultado de intentar listar es:
En cambio, si cambiamos “-Indexes” por “+Indexes”:
También podemos combinar en este archivo la declaración de dos directorios con políticas distintas:
<VirtualHost *:80>
[...]
<Directory "/var/www/web1/docs/">
Options -Indexes
</Directory>
<Directory "/var/www/web1/docs/docs2">
Option +Indexes
</Directory>
</VirtualHost>
Aunque es la configuración mostrada es la utilizada por defecto, podemos configurar con la política AllowOverride si se permiten .htaccess y en qué nivel:
<VirtualHost *:80>
[...]
<Directory "/var/www/web1">
AllowOverride None
</Directory>
</VirtualHost>