Nginx PHP · 3 min read · Sep 30, 2025

Cómo instalar y configurar Nginx con PHP-FPM en CentOS 8

Nginx es un servidor web gratuito, de código abierto y uno de los más potentes del mundo. Se utiliza principalmente para sitios web de alta carga y alto tráfico. Nginx es conocido por su estabilidad, configuración simple y bajo consumo de recursos. Puedes usar Nginx como servidor web y proxy inverso.

FPM significa FastCGI Process Manager, es una implementación alternativa de PHP FastCGI y se utiliza para sitios web de alto tráfico. Se usa comúnmente con servidores web para servir páginas PHP. PHP-FPM utiliza menos memoria y CPU en comparación con cualquier otro método de ejecución de PHP. PHP-FPM es más rápido que los métodos tradicionales basados en CGI para entornos PHP de múltiples usuarios. PHP-FPM también permite ejecutar múltiples versiones de PHP al mismo tiempo.

Este tutorial nos enseñará cómo instalar Nginx con soporte para PHP-FPM en CentOS 8.

Requisitos previos

  • Un servidor que ejecute CentOS 8.
  • Una contraseña de root configurada en tu servidor.

Comenzando

Por defecto, SELinux está habilitado en el servidor CentOS 8. Así que primero necesitarás desactivarlo.

Puedes hacer esto editando el archivo /etc/selinux/config:

nano /etc/selinux/config

Haz los siguientes cambios:

SELINUX=disabled

Guarda y cierra el archivo. Luego, reinicia tu servidor para aplicar los cambios.

Instalar el servidor web Nginx

Primero, instala el servidor web Nginx con el siguiente comando:

yum install nginx -y

Una vez que Nginx ha sido instalado, inicia el servicio de Nginx y habilítalo para que se inicie al arrancar con el siguiente comando:

systemctl start nginx  
systemctl enable nginx

Una vez que hayas terminado, puedes proceder al siguiente paso.

Instalar PHP y PHP-FPM

A continuación, instala PHP y PHP-FPM ejecutando el siguiente comando:

yum install php php-cli php-common php-fpm -y

Una vez que todos los paquetes estén instalados, inicia el servicio PHP-FPM y habilítalo para que se inicie después del reinicio del sistema:

systemctl start php-fpm  
systemctl enable php-fpm

También puedes verificar el estado del servicio PHP-FPM con el siguiente comando:

systemctl status php-fpm

Deberías obtener la siguiente salida:

? php-fpm.service - The PHP FastCGI Process Manager
   Loaded: loaded (/usr/lib/systemd/system/php-fpm.service; disabled; vendor preset: disabled)
   Active: active (running) since Thu 2019-10-17 05:39:11 EDT; 4min 40s ago
 Main PID: 1475 (php-fpm)
   Status: "Processes active: 0, idle: 5, Requests: 0, slow: 0, Traffic: 0req/sec"
    Tasks: 6 (limit: 5060)
   Memory: 28.5M
   CGroup: /system.slice/php-fpm.service
           ??1475 php-fpm: master process (/etc/php-fpm.conf)
           ??1478 php-fpm: pool www
           ??1479 php-fpm: pool www
           ??1480 php-fpm: pool www
           ??1481 php-fpm: pool www
           ??1482 php-fpm: pool www

Oct 17 05:39:10 centos8 systemd[1]: Starting The PHP FastCGI Process Manager...
Oct 17 05:39:11 centos8 systemd[1]: Started The PHP FastCGI Process Manager.

Crear una página de índice para Nginx

A continuación, necesitarás crear una página de muestra info.php para probar si Nginx utiliza PHP-FPM o no.

Puedes crear un info.php dentro del directorio raíz del documento predeterminado de Nginx como se muestra a continuación:

nano /var/www/html/info.php

Agrega las siguientes líneas:

Guarda y cierra el archivo cuando hayas terminado.

A continuación, cambia la propiedad del archivo info.php a nginx:

chown -R nginx: /var/www/html/info.php/

Configurar Nginx con PHP-FPM

A continuación, necesitarás crear un archivo de configuración de host virtual de Nginx y habilitar el soporte para PHP-FPM.

Puedes crearlo con el siguiente comando:

nano /etc/nginx/conf.d/example.conf

Agrega las siguientes líneas:

server {
    listen 80;
    server_name example.com;
    root /var/www/html/;
    index info.php;

    access_log /var/log/nginx/example.com.access.log;
    error_log /var/log/nginx/example.com.error.log;

    location ~ \.php$ {
        try_files $uri =404;
        fastcgi_pass unix:/run/php-fpm/www.sock;
        fastcgi_index   index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }

    location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg)$ {
        expires max;
        log_not_found off;
    }

}

Guarda y cierra el archivo. Luego, prueba Nginx en busca de errores de sintaxis con el siguiente comando:

nginx -t

A continuación, habilita el archivo de host virtual de Nginx y reinicia el servicio de Nginx para aplicar la configuración:

systemctl restart nginx

Probar Nginx con soporte PHP-FPM

Ahora, abre tu navegador web y escribe la URL http://example.com. Serás redirigido a la siguiente página:

En la página anterior, deberías ver que PHP-FPM está cargado con el servidor web Nginx.

Conclusión

¡Felicidades! has instalado con éxito Nginx con soporte para PHP-FPM en un servidor CentOS 8. Ahora puedes usar PHP-FPM para alojar múltiples sitios web que utilizan diferentes versiones de PHP.

Share: X/Twitter LinkedIn

Recibe nuevas publicaciones en tu bandeja de entrada.

No spam. Cancela la suscripción en cualquier momento.