Com relação a regras de reescrita, elas são permitidas na configuração principal do servidor, mas não afetam o VirtualHosts. Um pouco oculto no manual , é mencionado de maneira um tanto casual:
Note that rewrite configurations are not inherited by virtual hosts. This means that you need to have a
RewriteEngine on
directive for each virtual host in which you wish to use rewrite rules.
Portanto, um conjunto universal de regras em um arquivo de inclusão como parte de cada VirtualHost parece ser o caminho a seguir.
Em geral, no entanto: o manual lista todas as diretivas onde é permitido, que é sempre um ou mais de:
-
configuração do servidor
Isso significa que a diretiva pode ser usada nos arquivos de configuração do servidor (por exemplo, httpd.conf), mas não em qualquer contêiner<VirtualHost>
ou<Directory>
. Não é permitido em arquivos .htaccess. -
host virtual
Este contexto significa que a diretiva pode aparecer dentro de<VirtualHost>
contêineres nos arquivos de configuração do servidor. -
diretório
Uma diretiva marcada como sendo válida neste contexto pode ser usada dentro dos contêineres<Directory>, <Location>, <Files>, <If>,
e<Proxy>
nos arquivos de configuração do servidor, sujeitos às restrições descritas nas Seções de Configuração. -
.htaccess
Se uma diretiva for válida nesse contexto, isso significa que ela pode aparecer dentro de arquivos .htaccess por diretório. Ele pode não ser processado, embora dependa das substituições atualmente ativas.
Diretivas na configuração do servidor principal se aplicam a todo o servidor,
diretivas dentro de um <VirtualHost>
se aplicam somente a esse host virtual
e há um capítulo inteiro sobre como todas as seções se unem:
link