Desativar a execução de scripts PHP em pastas específicas é uma prática recomendada para reforçar a segurança de sites WordPress e evitar que arquivos maliciosos sejam executados em diretórios vulneráveis. Essa medida simples pode impedir que hackers explorem uploads não autorizados ou backdoors instalados em pastas de mídia, cache e backups.
Neste artigo, vamos mostrar como bloquear a execução de PHP em pastas críticas, proteger seu site contra ataques e reduzir os riscos de infecção por malware.
Por que desativar a execução de PHP em determinadas pastas?
No WordPress e em outros CMSs, algumas pastas devem armazenar arquivos estáticos (como imagens, PDFs e cache), mas não devem executar código PHP. Se um invasor conseguir enviar um arquivo .php
para essas pastas e executá-lo, ele poderá:
- Injetar malwares e shells remotos
- Criar redirecionamentos maliciosos
- Roubar dados sensíveis
- Acessar o banco de dados
Pastas comuns que devem ter a execução de PHP desativada:
/wp-content/uploads/
/wp-includes/
/wp-content/cache/
/backup/
(caso exista)- Qualquer outra pasta onde o usuário pode fazer upload
Como desativar a execução de scripts PHP com .htaccess
A forma mais simples de bloquear a execução de arquivos PHP em pastas específicas em servidores Apache é usando um arquivo .htaccess
.
Passo a passo:
1. Acesse o diretório que deseja proteger
Use o gerenciador de arquivos do seu painel de hospedagem (como cPanel) ou um cliente FTP para navegar até a pasta, por exemplo:
bashCopiarEditar/wp-content/uploads/
2. Crie ou edite o arquivo .htaccess
Se não existir, crie um novo arquivo chamado .htaccess
dentro da pasta.
3. Insira o seguinte conteúdo:
apacheCopiarEditar<FilesMatch "\.(php|php5|phtml)$">
Order Deny,Allow
Deny from all
</FilesMatch>
Esse código bloqueia o acesso e execução de arquivos .php
, .php5
e .phtml
naquela pasta.
Como testar se a restrição está funcionando
- Faça upload de um arquivo de teste, como
test.php
, com o seguinte conteúdo:
phpCopiarEditar<?php echo 'executando'; ?>
- Acesse o arquivo pelo navegador:
arduinoCopiarEditarhttps://seusite.com/wp-content/uploads/test.php
Se tudo estiver configurado corretamente, você verá um erro 403 (Acesso negado) ou página em branco — o que significa que a execução foi bloqueada.
Importante: Após o teste, exclua o arquivo
test.php
para evitar riscos.
Protegendo sites em servidores NGINX
Se você utiliza NGINX, a lógica é aplicada diretamente no bloco de configuração do site (geralmente no arquivo default.conf
ou site.conf
).
Exemplo para bloquear execução de PHP na pasta uploads
:
nginxCopiarEditarlocation ~* ^/wp-content/uploads/.*\.(php|php5|phtml)$ {
deny all;
}
Reinicie o NGINX após editar:
bashCopiarEditarsudo systemctl restart nginx
Dicas extras de segurança para evitar execução maliciosa
- Desabilite upload de arquivos PHP em formulários
- Use plugins de segurança como Wordfence ou Sucuri
- Realize escaneamentos regulares no seu site
- Mantenha o WordPress, plugins e temas atualizados
- Aplique permissões de arquivos e pastas corretamente
- Arquivos:
644
- Pastas:
755
- Arquivos:
Conclusão: proteja seu site com medidas simples e eficazes
Desativar a execução de scripts PHP em pastas específicas é uma ação técnica simples que pode evitar problemas graves de segurança. Com ela, você reduz a superfície de ataque e protege seu WordPress contra explorações comuns usadas por bots e hackers.
🔐 Quer uma análise completa da segurança do seu site WordPress?
Nossa equipe oferece consultoria, auditoria de segurança, configuração de regras de proteção e blindagem completa do seu ambiente digital.