Apache oculta tipos de arquivos específicos da Web

1

Eu tenho um repositório de arquivos com extensões .php, .sh e .txt que são verificados no diretório web do meu servidor (/ var / www). Eu preciso que os arquivos .php possam ser acessados digitando uma url, mas eu quero que os arquivos .sh e .txt só sejam acessíveis internamente - o que significa que eles podem ser lidos e executados por php ou por um cron, mas nunca por um usuário digitando em seu URL. Como posso fazer isso no apache? Preciso definir as permissões dos arquivos para algo ou mexer com o .htaccess ou fazer outra coisa?

    
por hackartist 14.07.2012 / 22:12

1 resposta

3

A maneira correta de fazer isso é mover os arquivos para fora do seu documento raiz - você é apenas uma falha na configuração do vazamento de dados, que nunca é Um lugar divertido para estar. Veja qualquer estrutura de aplicativo da Web moderna para um exemplo e execução.

No entanto, para fazer isso no Apache, basta usar uma diretiva LocationMatch no contexto apropriado:

<LocationMatch \.sh$>
    order deny,allow
    deny from all
</Location>
    
por 14.07.2012 / 22:49