GNU/Linux >> Tutoriales Linux >  >> Ubuntu

Cómo instalar varias versiones de PHP con Apache en Ubuntu 18.04 y 16.04

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.php
echo "<?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

Ambos sitios web están configurados ahora. Pero todavía no están activos. Apache mantiene los sitios activos en el directorio /etc/apache2/sites-enabled. Simplemente puede crear un enlace simbólico de archivos de configuración a este directorio o usar el siguiente comando para hacer lo mismo.

sudo a2ensite php56.example.com
sudo a2ensite php72.example.com

Después de realizar todos los cambios, reinicie Apache para volver a cargar los nuevos cambios de configuración.

sudo systemctl restart apache2

Su configuración se ha completado ahora. Vaya al siguiente paso para probar su configuración.

Configuración de prueba

Edite el archivo /etc/hosts en su sistema local y haga una entrada como la siguiente. Esto resolverá los nombres temporales en la dirección IP del host local.

sudo vim /etc/hosts

Agregue la siguiente entrada al final del archivo

127.0.0.1 php72.example.com
127.0.0.1 php56.example.com

Abra un navegador web y visite ambos sitios. Verá que php56.example.com muestra la versión PHP 5.6 y php72.ejemplo.com está mostrando el PHP 7.2 como la configuración.


Ubuntu
  1. Cómo instalar Apache en Ubuntu 18.04

  2. Cómo instalar Apache en Ubuntu 20.04

  3. Cómo instalar varias versiones de PHP en Ubuntu 18.04 LTS

  4. Cómo instalar Suphp con Apache en Ubuntu/Linux

  5. Cómo instalar PHP 7.4 en Ubuntu 20.04

Cómo instalar SuiteCRM en Ubuntu 20.04 con Apache/Nginx

Cómo instalar MediaWiki en Ubuntu 20.04 con Apache/Nginx

Cómo instalar varias versiones de PHP con Apache en Debian 11/10

Cómo instalar PHP 8 en Ubuntu 20.04

Cómo instalar PHP 8 en Ubuntu 18.04

Cómo instalar Apache en Ubuntu 22.04

    123456789101112 ServerName php72.example.com DocumentRoot /var/www/php72 Opciones -Índices +FollowSymLinks +MultiViews AllowOverride All Requiere todo concedido SetHandler "proxy:unix:/var/run/php/php7.2-fpm.sock|fcgi://localhost"