Revisão técnica: 08/09/2026.
disable_functions pode reduzir o acesso acidental a funções internas do PHP, mas não oferece isolamento confiável entre sites nem corrige uma aplicação vulnerável. A lista deve nascer das necessidades e ameaças do ambiente, passar por testes de compatibilidade e atuar junto com permissões, separação de processos, atualizações e monitoramento.
Entenda o que a diretiva faz
A configuração recebe nomes de funções internas separados por vírgula e só pode ser definida no php.ini. Desde o PHP 8.0, uma função desativada deixa de ser definida e pode ser redefinida pelo código do usuário. Funções criadas pela própria aplicação não são afetadas.
Conheça a limitação de segurança
O manual oficial do PHP alerta que a diretiva pode ser contornada e não deve ser considerada medida suficiente em hospedagem compartilhada. Ela não impede leitura de credenciais por código que já roda com o mesmo usuário nem substitui separação entre contas.
Não copie listas genéricas
Funções de processo, rede e sistema podem ser necessárias para filas, imagens, backups, atualizações e ferramentas administrativas. Bloquear tudo sem inventário causa falhas difíceis de diagnosticar. Algumas opções citadas em tutoriais antigos, como allow_url_fopen, são diretivas e não nomes válidos para essa lista.
Avalie risco e dependências
Mapeie aplicações, versões, tarefas e funções realmente usadas. Defina o abuso que pretende reduzir e verifique caminhos alternativos. Aplique primeiro em homologação ou em um grupo pequeno, monitore erros e documente a justificativa de cada item. Não exponha uma página de diagnóstico com a configuração de produção.
Priorize controles que isolam
Execute sites sob identidades distintas, limite permissões de arquivos, proteja segredos e banco, restrinja chamadas do sistema no nível do processo ou contêiner e mantenha o PHP atualizado. Remova extensões sem uso e aplique limites de recursos. Essas barreiras reduzem o impacto mesmo quando o código encontra outra função disponível.
Valide e revise após mudanças
Teste login, uploads, e-mail, cron, filas, geração de arquivos e atualização. Confirme o valor efetivo em cada SAPI e pool, pois CLI e servidor web podem usar configurações diferentes. Reavalie a lista ao trocar versão ou aplicação. Consulte o checklist de segurança do VPS e o guia para investigar incompatibilidades após atualizar o PHP.