Instalación de WordPress con Nginx y PHP-FPM en Ubuntu 22.04

Contents

Instalación de WordPress con Nginx y PHP-FPM en Ubuntu 22.04

En este artículo se describe paso a paso la implementación de un sitio de WordPress bajo el servidor web Nginx con PHP-FPM en un entorno Ubuntu 22.04. Se cubren desde los requisitos previos hasta la puesta en producción, aportando consejos de seguridad y optimización.

Requisitos Previos

  • Un servidor con Ubuntu 22.04 LTS (recomendado).
  • Acceso root o usuario con permisos sudo.
  • Dominio apuntando al servidor (ej: midominio.com).
  • Puertos 80 y 443 abiertos en el firewall.

1. Actualizar el Sistema e Instalar Nginx

Lo primero es asegurarnos de disponer de las últimas versiones de paquetes:

sudo apt update  sudo apt upgrade -y

Instalamos Nginx:

sudo apt install nginx -y

Verificar que Nginx esté activo:

sudo systemctl status nginx

2. Instalar y Configurar PHP-FPM

Instalamos PHP 8.1 y las extensiones necesarias:

sudo apt install php8.1-fpm php8.1-mysql php8.1-xml php8.1-curl php8.1-gd php8.1-mbstring php8.1-zip -y

Comprobamos que el servicio php8.1-fpm esté activo:

sudo systemctl status php8.1-fpm

Extensiones Recomendadas

Extensión Función
php8.1-mysql Conexión a bases de datos MySQL/MariaDB
php8.1-xml Procesamiento XML y RSS
php8.1-gd Manipulación de imágenes
php8.1-curl Comunicación HTTP externa
php8.1-mbstring Soporte multibyte
php8.1-zip Compresión ZIP

3. Configurar la Base de Datos MySQL/MariaDB

Instalamos el servidor de base de datos:

sudo apt install mariadb-server -y

Ejecutamos el script de seguridad:

sudo mysql_secure_installation

Ingresamos a la consola y creamos la base de datos y el usuario de WordPress:

sudo mysql -u root
CREATE DATABASE wordpress_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci
CREATE USER wp_user@localhost IDENTIFIED BY tu_password_segura
GRANT ALL PRIVILEGES ON wordpress_db. TO wp_user@localhost
FLUSH PRIVILEGES
EXIT

4. Descargar y Preparar WordPress

Nos ubicamos en /var/www/ y descargamos la última versión:

cd /var/www/
sudo wget https://wordpress.org/latest.tar.gz
sudo tar -xzvf latest.tar.gz
sudo mv wordpress midominio.com
sudo rm latest.tar.gz

Asignamos permisos al directorio:

sudo chown -R www-data:www-data /var/www/midominio.com
sudo find /var/www/midominio.com/ -type d -exec chmod 750 {} 
sudo find /var/www/midominio.com/ -type f -exec chmod 640 {} 

5. Configuración del Servidor Nginx

Creamos un bloque de servidor para nuestro dominio:

sudo nano /etc/nginx/sites-available/midominio.com

Ejemplo de contenido:

server {
    listen 80
    server_name midominio.com www.midominio.com

    root /var/www/midominio.com
    index index.php index.html

    access_log /var/log/nginx/midominio.access.log
    error_log  /var/log/nginx/midominio.error.log

    location / {
        try_files uri uri/ /index.phpargs
    }

    location ~ .php {
        include snippets/fastcgi-php.conf
        fastcgi_pass unix:/run/php/php8.1-fpm.sock
    }

    location ~ .(jscsspngjpgjpeggifsvgico) {
        expires max
        log_not_found off
    }
}

Activamos el bloque y comprobamos la configuración:

sudo ln -s /etc/nginx/sites-available/midominio.com /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx

6. Ajustes de Firewall

Si utilizas ufw:

sudo ufw allow Nginx Full
sudo ufw enable

7. Finalizar Instalación desde el Navegador

Accede a http://midominio.com y completa el asistente de configuración de WordPress, introduciendo los datos:

  • Base de datos: wordpress_db
  • Usuario: wp_user
  • Contraseña: tu_password_segura
  • Host: localhost
  • Prefijo de tablas: wp_ (recomendado dejarlo por defecto)

8. (Opcional) Certificado SSL con Let’s Encrypt

Para un entorno de producción es altamente recomendable activar HTTPS. Utilizaremos Certbot:

sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d midominio.com -d www.midominio.com

Certbot configurará automáticamente redirecciones HTTP→HTTPS y renovaciones automáticas.

Conclusión

La instalación de WordPress sobre Nginx y PHP-FPM en Ubuntu 22.04 proporciona un entorno ligero, eficiente y seguro. Con este proceso tendrás un sitio listo para producción, optimizable con cachés, CDN y escalable a futuras mejoras. Para más información oficial, consulta:



Acepto donaciones de BAT's mediante el navegador Brave 🙂



Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *