Eu tenho um servidor web apache executando como usuário apache, e o aplicativo que estou hospedando (Wordpress) requer certas pastas com permissões de gravação pelo usuário apache. Quero limitar as permissões de gravação (criação de arquivos) a apenas .png, .gif , .jpg e .pdf, mas negam a criação de arquivos .php. É possível fazer isso no apache ou linux?
Obrigado pela ajuda.
[EDITAR]
Conforme sugestão de Michael Kjörling, adicionei o seguinte a um arquivo .htaccess dentro de cada diretório de upload:
<FilesMatch "\.php$">
Order Allow,Deny
Deny from all
</FilesMatch>
linux
apache-http-server
wordpress
Sven Knowles
fonte
fonte
Respostas:
Você não pode fazer isso no Linux. Diferentemente do Windows, a extensão do arquivo não é tratada separadamente de forma alguma pelo Linux, portanto, não existe uma maneira genérica de manipular, por exemplo, arquivos * .php de uma maneira diferente de, por exemplo, * .PHP ou * .pdf.
No entanto, você pode usar a correspondência e as restrições de nomes de arquivos na própria configuração do servidor da Web ou no .htaccess para negar o acesso aos arquivos * .php no diretório de upload. Não é perfeito, pois o arquivo ainda seria carregado, mas pode estar próximo o suficiente do que você está tentando alcançar (impedir a execução do código carregado pelos usuários).
fonte