PHP viene visualizzato come testo normale dopo l'aggiornamento a 18.04


8

Ho appena effettuato l'aggiornamento a Ubuntu 18.04. Ora apache serve il php del mio sito Web come php in chiaro. Ho già provato: perché i miei file PHP vengono visualizzati come testo normale? (su Stack Overflow) e PHP 7 e apache visualizzano il testo normale e non possono essere riavviati . I pacchetti php installati sono:

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

Uno dei siti Web in questione è disponibile qui .

L'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 il 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 "-" "-"

Probabilmente dovresti installare e abilitare il giusto modulo php di Apache libapache2-mod-php7.2(ed eliminare quello vecchio).
pa4080,

libapache2-mod-php7.2 è già la versione più recente. :(
Benedikt Wutzi,

Forse dovresti abilitarlo: sudo a2enmod php7.2.
pa4080,

1
Modulo php7.2 già abilitato. ;)
Benedikt Wutzi il

1
Potresti scrivere la risposta come risposta, per favore? Sarebbe utile se altre persone si imbattessero nella stessa situazione
Lily Bergonzat,

Risposte:


23

Questo è ciò che ha ordinato la mia installazione

sudo apt install php7.2 php7.2-common php7.2-cli
sudo a2enmod php7.2

2
Grazie, abilitando il modulo php7.2 ha funzionato perfettamente, - sembra che ci siano stati conflitti tra più versioni di php
Agnius Vasiliauskas,

1
Avevo solo bisogno della seconda riga a2enmod. Una volta abilitato, l'applicazione è venuta fuori. Grazie!
user1794918

4

In realtà, oltre ai comandi in questa risposta , è necessario

sudo apt install libapache2-mod-php

anche. In qualche modo è scomparso!


0

Sembra che questo potrebbe essere correlato all'installazione e all'abilitazione di 2 versioni di PHP contemporaneamente dopo l'aggiornamento. Nessuna delle precedenti ha funzionato per me, quindi ho disinstallato Apache, PHP 7.1 e PHP 7.2, ho reinstallato Apache e PHP 7.2 e le cose ora funzionano.


0

Mi sono imbattuto in questo durante l'aggiornamento da Ubuntu 16.04.6 LTS a 18.04 LTS usando lo do-release-upgradestrumento. Nel mio caso i seguenti hanno aiutato:

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

Anche questo ha aggiunto libapache2-mod-php7.2. php7.2-commone php7.2-clisono già stati installati, quindi sono stati ignorati. sudo a2enmod php7.2è stato eseguito automaticamente da apt-get.

A proposito, è possibile diagnosticare questo problema creando un file /var/www/html/phpinfo.phpcon il seguente contenuto:

<?php phpinfo(); ?>

e quindi puntando il browser verso l'URL http://your.server/phpinfo.php. Dovresti ottenere una bella pagina web con tutte le impostazioni di PHP. Se <?php phpinfo(); ?>invece ricevi il testo, devi installare i pacchetti sopra descritti.

Sto menzionando questo perché prima ho appena eseguito php -vsulla riga di comando e mi ha detto che PHP 7.2 era installato. Il che è un po 'vero (dato che il materiale della riga di comando del pacchetto è php7.2-clistato effettivamente installato), ma non è l'intera storia. :-)

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.