Então, criei um servidor da Web apache incorporado usando buildroot e está funcionando bem, exceto pelo fato de não executar o código php. Posso executar arquivos .php na linha de comando do sistema, mas quando abro esses arquivos .php em um navegador, ele não executa o código php, simplesmente ignora todo o código php e o interpreta como se fosse html.
Procurei no arquivo /etc/apache2/httpd.conf e tem uma linha carregando o módulo php:
LoadModule php7_module modules/libphp7.so
Alguém sabe como fazer o php rodar?
Vou deixar, por via das dúvidas, informações sobre alguns diretórios e arquivos que possam ser relevantes:
/etc/
apache2/
php-fpm.conf
php-fpm.d/
php.ini
/etc/apache2/
extra/
httpd.conf.bak
mime.types
httpd.conf
Magia
original/
/usr/lib/php/
- (vazio)
/usr/modules/libphp7.so
Além de carregar o módulo (que seu arquivo httpd.conf mostra que está fazendo com base no conteúdo de sua pergunta), você também precisa usar uma
SetHandler
diretiva para*.php
ou outras extensões apropriadas.Algo assim deve funcionar, basta colocá-lo logo após a
LoadModule
instrução.O que esta declaração acima faz é dizer ao Apache como lidar com arquivos com certas extensões. O
.+\.ph(p[3457]?|t|tml)$
é uma expressão regular (regex) que corresponde a vários finais diferentes para o arquivo (o$
indica o final da string) - portanto, os arquivos terminados em.php
,.php3
,.php4
etc. serão todos processados pelo servidor Apache e pelo módulo PHP antes de serem enviados para o navegador.Não se esqueça de reiniciar o serviço httpd.
Se ainda assim não funcionar, verifique os caminhos referenciando o módulo a ser carregado e certifique-se de que
libphp7.so
está no local correto para ser carregado.