Je viens de passer à Ubuntu 18.04. Maintenant, Apache utilise le php de mon site web en php en texte brut. J'ai déjà essayé: Pourquoi mes fichiers PHP s'affichent-ils sous forme de texte brut? (Sur Stack Overflow) et PHP 7 et Apache affichent du texte brut et ne peuvent pas être redémarrés . Les paquets php installés sont:
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
Un des sites Web en question peut être vu ici .
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'
Et le 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 "-" "-"
C'est ce qui a arrangé mon installation
Sudo apt install php7.2 php7.2-common php7.2-cli
Sudo a2enmod php7.2
En fait, en plus des commandes dans cette réponse , vous avez besoin de
Sudo apt install libapache2-mod-php
ainsi que. D'une certaine manière, il a disparu!
Il semble que cela puisse être lié au fait que 2 versions de PHP soient installées et activées en même temps après la mise à niveau. Aucune de ce qui précède n'a fonctionné pour moi, alors j'ai désinstallé Apache, PHP 7.1 et PHP 7.2, réinstallé Apache et PHP 7.2 et tout fonctionne maintenant.
J'ai rencontré ce problème lors de la mise à niveau d'Ubuntu 16.04.6 LTS vers 18.04 LTS à l'aide de l'outil do-release-upgrade
. Dans mon cas, les éléments suivants ont aidé:
Sudo apt-get install php7.2 libapache2-mod-php
Ceci a ajouté libapache2-mod-php7.2
également. php7.2-common
et php7.2-cli
étaient déjà installés, ils ont donc été ignorés. Sudo a2enmod php7.2
a été exécuté automatiquement par apt-get
.
En passant, vous pouvez diagnostiquer ce problème en créant un fichier /var/www/html/phpinfo.php
avec le contenu suivant:
<?php phpinfo(); ?>
puis en pointant votre navigateur sur l'URL http://your.server/phpinfo.php
. Vous devriez obtenir une page Web agréable avec tous les paramètres PHP. Si vous obtenez plutôt le texte <?php phpinfo(); ?>
, vous devez installer les packages décrits ci-dessus.
Je le mentionne car tout d'abord, je viens d'exécuter php -v
sur la ligne de commande et il m'a été informé que PHP 7.2 était installé. Ce qui est en quelque sorte vrai (car les éléments de la ligne de commande du paquetage php7.2-cli
ont bien été installés), mais ce n'est pas toute l'histoire. :-)