Apache mostrando código PHP - após a atualização no Mac para o macOS Sierra

3

Estou usando um iMac que acabei de atualizar para o macOS Sierra. Antes disso, estava correndo El Capitan.

Sob minha configuração do El Capitan eu tinha Apache, PHP e MySQL configurado de acordo com este guia . Isso funcionou sem problemas.

Quando atualizei para o Sierra, ele substituiu uma carga de arquivos de configuração. Então eu voltei pelo guia e configurei tudo como eu tinha sob El Capitan.

http://localhost está funcionando como esperado e consigo ver arquivos em minha webroot. No entanto, se eu abrir uma página PHP, ela mostrará apenas o código PHP bruto em vez de executá-lo.

Estou usando o seguinte:

Apache

  • Versão do servidor : Apache / 2.4.23 (Unix)
  • Servidor construído : 8 de agosto de 2016 16:31:34

PHP

  • PHP 7.0.10 (cli) (construído em: 31 de agosto de 2016 10:25:51) (NTS)

macOS

  • Sierra 10.12
por Andy 29.09.2016 / 16:34

5 respostas

9

O Sierra vem com o PHP 5, não com o PHP 7. De qualquer forma, verifique se o módulo está carregado em httpd.conf :

LoadModule php5_module libexec/apache2/libphp5.so

Se isso não funcionar, provavelmente você não disse ao Apache para reconhecer arquivos * .php como executáveis do php. Para fazer isso, localize e edite httpd.conf e adicione as seguintes linhas (se ainda não estiverem presentes):

<FilesMatch .php$>
    SetHandler application/x-httpd-php
</FilesMatch>

e edite o parâmetro DirectoryIndex :

<IfModule dir_module>
    DirectoryIndex index.php index.html
</IfModule>

Outra solução comum é ativar as tags curtas abertas (se você tiver alguma em seu código PHP). Localize php.ini , procure a string short_open_tag = Off e altere para short_open_tag = On .

Reinicie o Apache.

    
por 03.10.2016 / 22:32
1

Seu apache não está mais processando arquivos php. Existe linha

LoadModule **php5_module** libexec/apache2/**libphp5.so**

no seu arquivo de configuração /etc/apache2/httpd.conf

Mas você instalou o PHP7. Altere para:

LoadModule **php7_module** libexec/apache2/**libphp7.so**

ou talvez módulos / mod_php.so ou sempre que o módulo php for localizado.

    
por 01.10.2016 / 19:30
1

Verifique se a linha #LoadModule php5_module libexec/apache2/libphp5.so não está comentada no arquivo principal httpd.conf . Não esqueça de reiniciar o Apache sudo apachectl restart .

    
por 30.09.2016 / 16:06
-1

Eu também tive esse problema. Verifique seu /private/ect/apache2/extra/htttpd-vhosts.conf para ver se ainda tem suas configurações de hosts virtuais. Meu original foi renomeado para httpd-vhosts.conf ~ anterior.

    
por 01.10.2016 / 04:43
-1

Você não pode abrir o arquivo .php usando o arquivo aberto no menu Arquivo do navegador, Você tem que digitar localhost / info.php (ou qualquer arquivo e caminho que você está tentando abrir) na barra de endereços do seu navegador ... Isso funciona para mim, pelo menos. Espero que você resolva isso.

    
por 29.12.2017 / 16:53

Tags