Especifique quais directores procurar pelo arquivo .htaccess

1

Eu li que ativar o .htaccess para todos os diretórios causa uma sobrecarga de desempenho, porque todas as subpastas também são verificadas para arquivos .htaccess.

Gostaria de ter apenas o arquivo .htaccess lido em: /var/www/xgclan.com/public_html e /var/www/xgclan.com/public_html/forum

Eu configurei o seguinte no meu apache2.conf (para /var/www/xgclan.com/public_html)

<Directory />
        Options FollowSymLinks
        AllowOverride None
        Require all denied
</Directory>

<Directory /usr/share>
        AllowOverride None
        Require all granted
</Directory>

<Directory /var/www/>
        Options FollowSymLinks
        AllowOverride None
        Require all granted
</Directory>

<Directory /var/www/xgclan.com/public_html>
        Options FollowSymLinks
        AllowOverride All
        Require all granted
</Directory>

Mas isso não parece funcionar .. os subdiretórios também são lidos para arquivos .htaccess

Eu devo mencionar que o xgclan.com é um virtualhost. O que estou fazendo errado?

Consegui impedir que os subdiretórios fossem verificados para arquivos .htaccess com:

<Directory /var/www/xgclan.com/public_html/>
        Options FollowSymLinks
        AllowOverride None
        Require all granted
</Directory>

Mas isso também bloqueou o arquivo .htaccess em /var/www/xgclan.com/public_html/forum Então, tentei adicionar a seguinte regra para permitir esse diretório específico:

<Directory /var/www/xgclan.com/public_html/forum>
        Options FollowSymLinks
        AllowOverride All
        Require all granted
</Directory>

Mas isso não parece funcionar.

    
por gijs007 21.03.2015 / 14:25

1 resposta

1

Você já tentou adicionar a seção Diretório na declaração do VirtualHost?

Qual é a sua saída error_log ao acessar o host no navegador? Você recebe algum erro como declarado nos documentos do apache ?

Ok, então se você quiser que o apache verifique apenas duas pastas específicas de todo o diretório virtualhost para arquivos .htaccess você deve especificar quais você deseja proibir e permitir, algo como:

<Directory /var/www/xgclan.com/public_html>
    Options FollowSymLinks
    AllowOverride All
    Require all granted
</Directory>

<Directory /var/www/xgclan.com/public_html/*/>
    Options FollowSymLinks
    AllowOverride None
    Require all granted
</Directory>

<Directory /var/www/xgclan.com/public_html/forum>
    Options FollowSymLinks
    AllowOverride All
    Require all granted
</Directory>
    
por 21.03.2015 / 14:43