Cómo configurar múltiples versiones de PHP con Apache en Ubuntu
- 1614
- 11
- Jaime Delgadillo
En general, el administrador del host usó un servidor separado para cada implementación de la aplicación de la versión PHP. Que aumenta el costo de alojamiento. Algunos de los gerentes de host están utilizando Docker para ejecutar múltiples versiones de PHP en un solo servidor. Además, la mayoría de ustedes conoce la configuración, utilicé en este tutorial. Pero algunos de los administradores del sistema no son conscientes de esto. Este tutorial lo ayudará a instalar múltiples versión de PHP con Apache en Ubuntu 22.04, 20.04 y 18.04 sistemas LTS sin cambiar las versiones de PHP.
Este tutorial describe la instalación y la configuración de dos virtualhost en Apache con versiones PHP separadas. First Virtualhost funcionará con PHP 8.1 y otro virtualhost se ejecutará con PHP 7.4. Así que solo pasa por este tutorial. También puede usar más de dos versiones PHP con Apache según sea necesario, pero este tutorial cubre dos solo.
Instalación de apache2
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 de Apache.
SUDO APT UPDATY APT APT INSTALA APACHE2 LBAPACHE2-MOD-FCGID
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 Fcgid alias proxy_fcgi
Instalación de versiones PHP
Para la instalación de versiones PHP, utilizamos el PPA mantenido aquí. Use el siguiente par de comandos para agregar el PPA a su sistema.
sudo apt install software-properties-común sudo add-apt-repository PPA: OnDrej/PHP
Para este tutorial, estamos usando Php 8.1 y PHP 7.4 para configurar con el servidor web de Apache. Para usar las múltiples versiones de PHP, usaremos PHP FPM y FastCGI. Instale los siguientes paquetes en su sistema.
SUDO APT UPDATY SUDO APT INSTALL PHP8.1 Php8.1-FPM SUDO APT Instalar PHP7.4 php7.4-FPM
Después de la instalación, Php-FPM Los servicios se iniciarán automáticamente. Use los siguientes comandos para asegurarse de que ambos servicios se estén ejecutando.
SUDO SystemCTL Status PHP8.1-FPM SUDO SYSTEMCTL ESTADO PHP7.4-FPM
- Puede que le guste: Cómo habilitar/deshabilitar los módulos PHP en Ubuntu
Configuración de los hosts virtuales de Apache
Prepárese para la configuración de sitios web en su servidor Apache. Para el propósito de prueba, estoy configurando dos sitios web para trabajar con dos versiones de 2 PHP diferentes. Primero, cree dos directorios en su servidor.
sudo mkdir/var/www/php81 sudo mkdir/var/www/php74
Crear un índice.archivo php que contiene el phpinfo () función.
echo "" | sudo tee -a/var/www/php81/index.PHP Echo "" | sudo tee -a/var/www/php74/index.php
Comencemos la creación de virtualhost. Apache mantiene todos los archivos de configuración VirtualHost en/etc/apache2/sites disponible con la extensión .confusión. Cree un archivo para el primer host virtual y edite en su editor de texto favorito.
sudo vim/etc/apache2/sites disponible/php81.ejemplo.comunicarse.confusión
Agregar el siguiente contenido. Asegúrese de usar el nombre de servidor correcto y la ruta de directorio de acuerdo con su configuración. Este sitio web está configurado para funcionar con PHP 8.1.
ServerName PHP81.ejemplo.com documentroot/var/www/php81 opciones -dexes +seartsymlinks +múltiples vistas al mismo.4.10+ puede proxy a unix socket sethandler "proxy: unix:/var/run/php/php8.1-fpm.calcetín | fcgi: // localhost "12345678910111213 |
Del mismo modo, cree un segundo archivo de configuración VirtualHost para funcionar con PHP 7.4. Editar el archivo de configuración en el editor de texto:
sudo vim/etc/apache2/sites disponible/php74.ejemplo.comunicarse.confusión
Agregue el siguiente contenido a archivar con el nombre de servidor adecuado y documentroot.
ServerName PHP74.ejemplo.com documentroot/var/www/php74 opciones -dexes +seartsymlinks +múltiples vistas al mismo.4-FPM.calcetín | fcgi: // localhost "123456789101112 |
Ambos sitios web están configurados ahora. Pero todavía no están activos. Apache mantiene los sitios activos en el directorio habilitado para/etc/apache2/sites. 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 php81.ejemplo.com sudo a2ensite php74.ejemplo.comunicarse
Después de hacer todos los cambios, reinicie Apache para recargar nuevos cambios de configuración.
sudo systemctl reiniciar apache2
Tu configuración se ha completado ahora. Vaya al siguiente paso para probar su configuración.
Configuración de prueba
Editar /etc /hosts archivo en su sistema local y hacer una entrada como a continuación. Esto resolverá los nombres de Temprory a la dirección IP localhost.
sudo vim /etc /hosts
Agregue la siguiente entrada al final del archivo
127.0.0.1 Php81.ejemplo.com 127.0.0.1 Php74.ejemplo.comunicarse
Abra un navegador web y visite ambos sitios. Verás que php81.ejemplo.comunicarse muestra la versión Php 8.1 y php74.ejemplo.comunicarse está mostrando el Php 7.4 Como la configuración.
- http: // php81.ejemplo.comunicarse
Php 8.1 con Apache - http: // php74.ejemplo.comunicarse
Php 7.4 con Apache
Conclusión
Este tutorial le ayudó a instalar y configurar varias versiones de PHP con Apache en el sistema Ubuntu Linux. Que le proporciona una solución rentable para implementar diferentes aplicaciones de versión PHP en un solo servidor web.
- « Cómo instalar Nomachine en Ubuntu, Debian y LinuxMint (alternativa de TeamViewer)
- Cómo instalar el último nodo.JS en macOS »