PHP aparece como texto sem formatação após a atualização para 18.04

8

Acabei de atualizar para o Ubuntu 18.04. Agora o apache serve o php do meu site como php de texto simples. Eu já tentei: Por que meus arquivos PHP são exibidos como texto sem formatação? (no Stack Overflow) e o PHP 7 e apache exibem texto sem formatação e não podem ser reiniciados . Os pacotes php instalados são:

php              php7.2-cli       php7.2-fpm       php7.2-mbstring  php7.2-pgsql     php7.2-sqlite3   php7.2-zip       php-curl         php-igbinary     php-pgsql        php-xml
php7.2           php7.2-common    php7.2-gd        php7.2-mysql     php7.2-readline  php7.2-xml       php-bz2          php-fpm          php-mbstring     php-soap         php-xmlrpc
php7.2-bz2       php7.2-curl      php7.2-json      php7.2-opcache   php7.2-soap      php7.2-xmlrpc    php-common       php-gd           php-mysql        php-sqlite3      php-zip

Um dos sites em questão pode ser visto aqui .

O apache error.log:

[Thu Apr 26 16:02:12.740886 2018] [mpm_prefork:notice] [pid 6504] AH00169: caught SIGTERM, shutting down

[Thu Apr 26 16:02:13.001806 2018] [mpm_prefork:notice] [pid 7704] AH00163: Apache/2.4.29 (Ubuntu) OpenSSL/1.1.0g configured -- resuming normal operations

[Thu Apr 26 16:02:13.001900 2018] [core:notice] [pid 7704] AH00094: Command line: '/usr/sbin/apache2'

E o access.log:

<MYIP> - - [26/Apr/2018:16:02:40 +0200] "-" 408 3435 "-" "-"

<MYIP> - - [26/Apr/2018:16:02:40 +0200] "-" 408 3435 "-" "-"

<MYIP> - - [26/Apr/2018:16:02:40 +0200] "-" 408 3435 "-" "-"
Benedikt Wutzi
fonte
Provavelmente você deve instalar e ativar o módulo php do Apache correto libapache2-mod-php7.2(e limpar o antigo).
pa4080
A libapache2-mod-php7.2 já é a versão mais recente. :(
Benedikt Wutzi
Talvez você deve habilitá-lo: sudo a2enmod php7.2.
pa4080
1
O módulo php7.2 já está ativado. ;)
Benedikt Wutzi
1
Você poderia escrever a resposta como resposta, por favor? Seria útil se outras pessoas tropeçar em cima a mesma situação
Lily Bergonzat

Respostas:

23

Foi isso que ordenou minha instalação

sudo apt install php7.2 php7.2-common php7.2-cli
sudo a2enmod php7.2
Phippsia
fonte
2
Graças, para mim, permitindo módulo php7.2 funcionou perfeitamente, - Parece que houve conflitos entre várias versões de php
Agnius Vasiliauskas
1
Eu só precisava da segunda linha a2enmod. Uma vez ativado, o aplicativo surgiu. obrigado!
user1794918
4

Na verdade, além dos comandos nesta resposta , você precisa

sudo apt install libapache2-mod-php

também. De alguma forma, desapareceu!

Jarek
fonte
0

Parece que isso pode estar relacionado ao fato de ter 2 versões do PHP instaladas e ativadas ao mesmo tempo após a atualização. Nenhuma das opções acima funcionou para mim, então eu desinstalei o Apache, PHP 7.1 e PHP 7.2, reinstalei o Apache e PHP 7.2 e as coisas estão funcionando agora.

Jonathan Bossenger
fonte
0

Eu me deparei com isso durante a atualização do Ubuntu 16.04.6 LTS para 18.04 LTS usando a do-release-upgradeferramenta No meu caso, o seguinte ajudou:

sudo apt-get install php7.2 libapache2-mod-php

Isso acrescentou libapache2-mod-php7.2também. php7.2-commone php7.2-clijá foram instalados e, portanto, foram ignorados. sudo a2enmod php7.2foi executado automaticamente por apt-get.

BTW, você pode diagnosticar esse problema criando um arquivo /var/www/html/phpinfo.phpcom o seguinte conteúdo:

<?php phpinfo(); ?>

e, em seguida, aponte seu navegador para o URL http://your.server/phpinfo.php. Você deve ter uma boa página da Web com todas as configurações do PHP. Se você receber o <?php phpinfo(); ?>texto, precisará instalar os pacotes descritos acima.

Estou mencionando isso, porque primeiro eu apenas corri php -vna linha de comando e ele me disse que o PHP 7.2 foi instalado. O que é meio que verdade (como o material da linha de comando do pacote php7.2-clifoi realmente instalado), mas não é a história toda. :-)

Laringe Decidua
fonte