Introducción
Apache y PHP-FPM se utilizan ampliamente en el desarrollo web para ofrecer contenido dinámico. Si bien Apache es el servidor web más popular que se usa en la actualidad, PHP-FPM es un administrador de procesos FastCGI que brinda una forma más rápida y eficiente de procesar solicitudes de PHP. La combinación de los dos puede mejorar significativamente el rendimiento de un sitio web.
PHP-FPM (FastCGI Process Manager) es un sistema para ejecutar scripts PHP de manera eficiente y escalable. En lugar de ejecutar cada solicitud PHP como un proceso separado, PHP-FPM utiliza un grupo de procesos PHP preiniciados que pueden manejar varias solicitudes simultáneamente.
PHP-FPM funciona como un servidor FastCGI, lo que significa que puede usarse con un servidor web como Apache o Nginx. Cuando un servidor web recibe una solicitud de PHP, pasa la solicitud a PHP-FPM, que luego procesa la solicitud y devuelve el resultado al servidor web.
PHP-FPM es conocido por su alto rendimiento y capacidad para manejar grandes cantidades de tráfico web. Además, debido a que utiliza un conjunto de procesos PHP preiniciados, PHP-FPM puede manejar los picos de tráfico sin sufrir ralentizaciones ni interrupciones del servicio. Esta escalabilidad lo hace adecuado para aplicaciones web intensivas en tráfico y carga de trabajo.
En este artículo, proporcionaremos una guía paso a paso sobre cómo instalar Apache con PHP-FPM en Ubuntu 22.04.
Actualice su sistema
Antes de instalar cualquier software nuevo, debe actualizar su sistema para asegurarse de que todos los paquetes estén actualizados. Puede hacerlo ejecutando el siguiente comando en la terminal:
sudo apt update && sudo apt upgrade
instalar apache
Para instalar Apache en Ubuntu 22.04, ejecute el siguiente comando en la terminal:
sudo apt install apache2
Una vez completada la instalación, puede iniciar el servicio Apache ejecutando el siguiente comando:
sudo systemctl start apache2
También puede permitir que Apache se inicie en el arranque ejecutando el siguiente comando:
sudo systemctl enable apache2
Instalar PHP-FPM
Es posible que los repositorios predeterminados no contengan los paquetes de la última versión de PHP. Por lo tanto, siempre preferimos usar ondrej/php PPA para instalar PHP, que contiene la mayoría de las versiones.
Para configurar PPA, ejecute los siguientes comandos:
sudo apt install python-software-properties
sudo add-apt-repository ppa:ondrej/php
Luego instale PHP junto con PHP-FPM, ejecutando el siguiente comando en la terminal:
sudo apt install php8.2 php8.2-fpm
Nota: Reemplace "8.2" con las versiones de PHP requeridas (como: 8.1, 7.4, 7.3, etc.)
Una vez completada la instalación, puede iniciar el servicio PHP-FPM ejecutando el siguiente comando:
sudo systemctl start php8.2-fpm
También puede habilitar PHP-FPM para que se inicie en el arranque ejecutando el siguiente comando:
sudo systemctl enable php8.2-fpm
Configurar Apache para usar PHP-FPM
Para configurar Apache para usar PHP-FPM, debe habilitar los módulos "proxy_fcgi" y "proxy". Puede hacer esto ejecutando el siguiente comando:
sudo a2enmod proxy_fcgi proxy
Cree un nuevo archivo de configuración para su host virtual usando el siguiente comando:
sudo nano /etc/apache2/sites-available/example.com.conf
Nota: Reemplace "example.com" con su propio nombre de dominio.
Dentro del nuevo archivo de configuración, agregue la siguiente configuración con PHP-FPM:
<VirtualHost *:80>
ServerName example.com
ServerAlias www.example.com
DocumentRoot /var/www/html
<Directory /var/www/html>
Options -Indexes +FollowSymLinks +MultiViews
AllowOverride All
Require all granted
</Directory>
<FilesMatch \.php$>
SetHandler "proxy:unix:/run/php/php8.2-fpm.sock|fcgi://localhost/"
</FilesMatch>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Nota: Cambie "ServerName", "ServerAlias", "DocumentRoot" y la ruta del socket PHP FPM para que coincida con el dominio y la ruta del archivo deseados.
Guarde y cierre el archivo presionando CTRL+X, luego Y y ENTER.
Habilite el nuevo host virtual ejecutando el siguiente comando:
sudo a2ensite example.com.conf
Vuelva a cargar el servidor web Apache para aplicar los cambios:
sudo systemctl reload apache2
Probar la configuración
Para probar Apache con la configuración PHP-FPM, cree un nuevo archivo PHP en el directorio raíz de documentos de su sitio web:
sudo nano /var/www/html/test.php
Agregue las siguientes líneas al archivo:
<?php phpinfo(); ?>
Guarde el archivo y salga del editor de texto. Luego, abra su navegador web y vaya a "http://example.com/test.php". Si todo está configurado correctamente, debería ver la página de información de PHP.
Conclusión
La instalación de Apache con PHP-FPM en Ubuntu 22.04 puede mejorar el rendimiento del sitio web y la experiencia general del usuario. Apache es un servidor web ampliamente utilizado, mientras que PHP-FPM es un administrador de procesos FastCGI que permite un procesamiento eficiente de las solicitudes de PHP. Juntos, brindan una poderosa combinación que puede optimizar la velocidad y el rendimiento del sitio web. Siguiendo la guía detallada de este artículo, puede instalar fácilmente Apache con PHP-FPM en Ubuntu 22.04 y aprovecharlo.