O que significa Directory / entry na configuração padrão do Apache2?

5

Isso é do arquivo /etc/apache2/sites-enabled/000-default logo após instalar o apache2 nos repositórios.

DocumentRoot /var/www
<Directory />
        Options FollowSymLinks
        AllowOverride None
</Directory>
<Directory /var/www/>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride None
        Order allow,deny
        allow from all
</Directory>

O que essa primeira parte configura? Para mim, isso parece que o DocumentRoot deve ser / em vez de / var / www, permitindo que <Directory /> part tenha algum efeito , mas eu tenho que estar errado.

    
por Joni 29.09.2010 / 20:42

1 resposta

4

Configura perms para a raiz ('/' é um dir neste contexto, não tem nada a ver com o fechamento da tag) e até o fim, a menos que seja sobrescrito. Raiz para baixo = > seu disco inteiro. Então ele sobrescreve para o seu DocRoot.

Portanto, neste arquivo, ele configura perms muito restritivos (AllowOverride None) em todo o disco, e a próxima sub-rotina Directory abre-o especificamente para o seu DocRoot.

Essas permissões restritivas também aceleram as coisas. Ele permite FollowSymLinks, o que significa que o servidor web NÃO precisa fazer uma chamada lstat () em cada diretório até o root, salvando alguns syscalls de disco. AllowOverrideNone também significa que você não precisa procurar arquivos .htaccess nesses diretórios, cortando mais alguns syscalls de disco (lentos). Lembre-se que para cada requisição, o servidor web deve considerar todos os diretórios do diretório em que o conteúdo vive até o root. Com estes perms, você entra em curto-circuito com esses checks, eliminando os hits no disco, que são um inimigo real.

    
por 29.09.2010 / 20:47