Na minha instalação do CentOS 7, o SELinux é ativado por padrão. Isso está impedindo o Apache de ler corretamente os arquivos PHP na raiz do documento /var/www/html padrão (o navegador fica em branco ao exibir páginas da Web contendo script PHP). Quando desativo o SELinux, as páginas são exibidas normalmente.
Existe alguma maneira de configurar o SELinux para permitir que o Apache acesse arquivos PHP da raiz do documento? Prefiro não desabilitar o SELinux totalmente, visto que o CentOS acredita claramente que é uma adição de segurança desejável.
Eu não faço muito SELinux, mas você pode tentar
Isso permite que o Apache execute scripts PHP nesse diretório e persista após uma reinicialização.
Se você usa o MySQL, pode ser necessário fazer o mesmo. SELinux: Deixar o Apache falar com o MySQL no CentOS pode ajudar
A execução
audit2allow < /var/log/audit/audit.log
confirmou que o httpd estava sendo bloqueado pelo SELinux (veja este link ). A solução foi criar e aplicar um módulo de política usando as seguintes etapas:audit2allow -a -M my_httpd
(substitua 'my_httpd' pelo nome de sua preferência).semodule -i my_httpd.pp
para instalar o módulo.Depois de seguir essas etapas, o Apache conseguiu executar scripts PHP no meu servidor sem dificuldade. A reinicialização do servidor não destrói as alterações.
Conteúdo do arquivo do módulo (my_httpd.te):