En general, el administrador del host usaba un servidor separado para cada implementación de la aplicación de la versión de PHP. Lo que aumenta el costo de alojamiento. Algunos de los administradores de host utilizan Docker para ejecutar varias versiones de PHP en un único servidor. Además, la mayoría de ustedes conocen la configuración que utilicé en este tutorial. Pero algunos de los administradores del sistema no son conscientes de esto. Este tutorial lo ayudará a instalar varias versiones de PHP con Apache en el sistema Ubuntu 18.04 y 16.04 sin cambiar de versión de PHP.
Este tutorial describe la instalación y configuración de dos VirtualHost en Apache con versiones PHP separadas. Primero VirtualHost funcionará con PHP 5.6 y otro VirtualHost funcionará con PHP 7.2. Así que sigue este tutorial. También puede usar más de dos versiones de PHP con Apache según sea necesario, pero este tutorial solo cubre dos.
Instalación de Apache
Instale el servidor web Apache desde el repositorio oficial. Inicie la terminal en su sistema o inicie sesión con ssh para sistemas remotos. Ejecute los siguientes comandos para instalar la última versión disponible del servidor web Apache.
sudo apt update sudo apt install apache2 libapache2-mod-fastcgi Ubuntu 18.04 Users: sudo apt install apache2 libapache2-mod-fcgid
Instalación PHP
Para la instalación de versiones de PHP, utilizamos el PPA mantenido aquí. Use los siguientes dos comandos para agregar el PPA a su sistema.
### On Ubuntu 18.04 sudo apt install software-properties-common sudo add-apt-repository ppa:ondrej/php ### On Ubuntu 16.04 sudo apt install python-software-properties sudo add-apt-repository ppa:ondrej/php
Para este tutorial, estamos usando PHP 5.6 y PHP 7.2 para configurar con el servidor web Apache. Para usar las múltiples versiones de PHP, usaremos PHP FPM y FastCGI. Instalemos los siguientes paquetes en su sistema.
apt update sudo apt install php5.6 php5.6-fpm sudo apt install php7.2 php7.2-fpm
Después de la instalación, los servicios de php-fpm se iniciarán automáticamente. Use los siguientes comandos para asegurarse de que ambos servicios se estén ejecutando.
sudo systemctl status php5.6-fpm sudo systemctl status php7.2-fpm
- Recomendado:Cómo habilitar/deshabilitar módulos PHP en Ubuntu
Configuración de Apache
Ahora habilite algunos módulos requeridos para la configuración de múltiples versiones de PHP con Apache. Estos módulos son necesarios para integrar PHP FPM y FastCGI con el servidor Apache.
sudo a2enmod actions fastcgi alias proxy_fcgi Ubuntu 18.04 Users: sudo a2enmod actions fcgid alias proxy_fcgi
Prepárate para la configuración de sitios web en tu servidor Apache. Para fines de prueba, estoy configurando dos sitios web para que funcionen con dos versiones de PHP diferentes. Primero, cree dos directorios en su servidor.
sudo mkdir /var/www/php56 sudo mkdir /var/www/php72
Ahora, cree e indexe.php que contenga la función phpinfo().
echo " <?php phpinfo(); ?> " > /var/www/php56/index.phpecho " <?php phpinfo(); ?> " > /var/www/php72/index.php
Comencemos la creación de VirtualHost. Apache mantiene todos los archivos de configuración de VirtualHost en /etc/apache2/sites-disponible con la extensión .conf. Cree un archivo para el primer host virtual y edítelo en su editor de texto favorito.
sudo vim /etc/apache2/sites-available/php56.example.com.conf
Agrega el siguiente contenido. Asegúrese de utilizar el nombre del servidor y la ruta del directorio correctos según su configuración. Este sitio web está configurado para funcionar con PHP 5.6.
Apache