Como permitir apenas determinados arquivos no Apache

2

Gostaria de filtrar o acesso a determinados arquivos no apache. Eu quero apenas acesso CGI. Então eu tentei colocar no arquivo vhost:

<FilesMatch "\.cgi$">
 Order allow,deny
 Allow from all
</FilesMatch>

<FilesMatch "."> # All other files
 Order allow,deny
 Deny from all
</FilesMatch>

Mas o último substitui tudo.

Obrigado

    
por Himberjack 02.03.2010 / 09:31

2 respostas

0

Acredito que você precisa trocar os valores na sua diretiva Order da seguinte maneira:

<FilesMatch "\.cgi$">
 Order Deny,Allow
 Allow from all
</FilesMatch>

<FilesMatch "."> # All other files
 Order Deny,Allow
 Deny from all
</FilesMatch>

Por padrão, isso negará todo o acesso de todos os arquivos. Qualquer arquivo terminado em .cgi será permitido. Consulte a documentação na diretiva Order para obter mais informações.

    
por 25.08.2012 / 17:04
0

Eu tentei na minha plataforma de teste e isso deve funcionar. O ponto principal é que você precisa negar todo o acesso ao diretório que gostaria de assumir, por exemplo, protegido :

<Directory "/protected">
    Order allow,deny
    Deny from all
</Directory>

Com esta configuração, todos os arquivos da sua pasta protected não estão acessíveis. Então você pode permitir o acesso CGI da seguinte forma:

<FilesMatch "\.cgi$">
    Order deny,allow
    Allow from all
</FilesMatch>

Você deve ser capaz de executar qualquer arquivo CGI agora.

    
por 08.08.2016 / 20:41