Ejecutando 16.04, configuración de la pila de lámparas y funcionando correctamente. Tener varias versiones de php mostradas en /etc:
/etc/php/7.0/apache2/php.ini, /etc/php/7.1/apache2/php.ini y /etc/php/7.2/apache2/php.ini
Existe una situación similar para /etc/php/7.0/cli/php.ini y así sucesivamente. En una ventana de terminal, la salida de
php -i | grep 'php.ini'
es
Configuration File (php.ini) Path => /etc/php/7.2/cli
Archivo de configuración cargado => /etc/php/7.2/cli/php.ini Entonces deduzco que ejecutar php en la línea de comando está usando php versión 7.2
Mi archivo info.php (http://localhost/info.phpmuestra que apache2 está usando php versión 7.0:
PHP Versión 7.0.27-1+ubuntu16.04.1+deb.sury.org+1 ¿Cómo consigo que apache2 use la versión php 7.2?
Respuesta1
Puede habilitar uno diferente mod_php
para apache2. Intentar
$ a2enmod php7.2
Esto debería deshabilitar las versiones anteriores y crearlas /etc/apache2/mods-enabled/php7.2.conf
en la ubicación adecuada php.ini
.
Si no tienes este mod, ejecuta $ apt-get install libapache2-mod-php7.2
.
Tenga en cuenta que necesita reiniciar Apache2 para ver los cambios en los módulos cargados.
Respuesta2
Verifique su configuración de Apachepara ver qué módulos está cargando Apache. Deberías buscar una línea como esta:
LoadModule auth_basic_module modules/libphp7.so
Y cámbielo al módulo php que desea usar. Algo más como esto:
LoadModule auth_basic_module modules/libphp72.so
Por supuesto, esto supone que tiene el módulo php dentro del directorio de módulos de Apache.
Tú también puedesespecificarcierto php.ini
para que Apache lo use.