Instalación WordPress en Debian 12 con pila LEMP PHP-8
Instalación de WordPress en Debian 12 con la pila LEMP y PHP 8
WordPress es un sistema de gestión de contenidos (CMS, por sus siglas en inglés) de código abierto muy popular para la creación y administración de sitios web y blogs. Lanzando en 2003, ha consolidado una amplia base de usuarios y una comunidad activa de desarrolladores y diseñadores.
Requisitos previos
- Servidor con Linux: Debes disponer de un servidor que ejecute Linux; esta guía está diseñada para Debian 12.
- Usuario con permisos de superusuario: Debes tener acceso a un usuario con privilegios sudo en el servidor para poder llevar a cabo las tareas de instalación y configuración.
- Nombre de Dominio Completo (FQDN): Si deseas acceder a tu sitio WordPress a través de un dominio personalizado, asegúrate de tener configurado y apuntando un nombre de dominio completo (FQDN) al servidor.
- Acceso a Internet: Necesitas acceso a Internet para descargar paquetes y realizar actualizaciones durante el proceso de instalación.
Asegúrate de cumplir con todos estos requisitos antes de comenzar la instalación de WordPress en tu servidor.
Si no tienes instalada la pila LEMP, puedes hacerlo a través de este enlace.
Creación de un VirtualHost en Nginx
La creación de un VirtualHost en Nginx te permite configurar múltiples sitios web en un único servidor. Sigue estos pasos para crear un VirtualHost en Nginx.
Copiaremos el archivo de configuración predeterminado de Nginx para usarlo como ejemplo y lo nombraremos como wordpress; ten en cuenta que este nombre es meramente informativo.
javiercruces@IWEB:~$ sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/wordpress
Editaremos el contenido del archivo con el siguiente comando:
javiercruces@IWEB:~$ sudo nano /etc/nginx/sites-available/wordpress
A continuación, presento un ejemplo del archivo de configuración; asegúrate de definir el nombre del servidor (tu dominio) y el directorio raíz del sitio.
server {
listen 80;
root /var/www/wordpress; # Cambia esta linea por la ubicación del directorio root de tu wordpress
index index.php index.html index.htm;
server_name wordpress.fjcd.es; # Cambia esta linea y pon el FQDN , a traves de este accederás a tu wordpress
client_max_body_size 500M;
location / {
try_files $uri $uri/ /index.php?$args;
}
location = /favicon.ico {
log_not_found off;
access_log off;
}
location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ {
expires max;
log_not_found off;
}
location = /robots.txt {
allow all;
log_not_found off;
access_log off;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass 127.0.0.1:9000;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
Para activar esta configuración, crearemos un enlace simbólico:
javiercruces@IWEB:~$ sudo ln -s /etc/nginx/sites-available/wordpress /etc/nginx/sites-enabled/
Ahora reiniciaremos Nginx para aplicar los cambios:
javiercruces@IWEB:~$ sudo systemctl reload nginx
Para acceder a este VirtualHost desde la máquina cliente, dado que no disponemos de un servidor DNS, recuerda añadir la IP del servidor y el ServerName correspondiente al archivo /etc/hosts:
javiercruces@HPOMEN15:~$ cat /etc/hosts
#Añade la IP de tu servidor y el ServerName correspondiente (wordpress.fjcd.es)
#Ponlo al final del fichero y no modifiques las lineas existentes en tu fichero
192.168.125.27 wordpress.fjcd.es
Creación de la base de datos con un usuario.
Te recomiendo anotar los datos introducidos a continuación, ya que los necesitarás más adelante. Nos conectaremos a la base de datos:
javiercruces@IWEB:~$ sudo mysql -u root -p
Enter password:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 31
Server version: 10.11.4-MariaDB-1~deb12u1 Debian 12
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
# Creación de la base de datos:
MariaDB [(none)]> CREATE DATABASE fjcd_wordpress;
Query OK, 1 row affected (0,001 sec)
# Creación del usuario para la base de datos:
MariaDB [(none)]> CREATE USER 'fjcd-wordpress'@'localhost' IDENTIFIED BY 'tu_contraseña';
Query OK, 0 rows affected (0,013 sec)
# Asignación de permisos sobre la base de datos creada:
MariaDB [(none)]> GRANT ALL PRIVILEGES ON fjcd_wordpress.* TO 'fjcd-wordpress'@'localhost';
Query OK, 0 rows affected (0,010 sec)
# Actualización de los permisos:
MariaDB [(none)]> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0,000 sec)
# Salida de la CLI de MySQL
MariaDB [(none)]> EXIT;
Bye
Instalación de WordPress
Lo primero que haremos será descargar WordPress. Podemos hacerlo utilizando wget o, si ya lo hemos descargado en el equipo anfitrión, transferirlo mediante SCP o FTP.
javiercruces@IWEB:~$ wget https://wordpress.org/latest.tar.gz
--2023-10-27 12:33:17-- https://wordpress.org/latest.tar.gz
Resolviendo wordpress.org (wordpress.org)... 198.143.164.252
Conectando con wordpress.org (wordpress.org)[198.143.164.252]:443... conectado.
Petición HTTP enviada, esperando respuesta... 200 OK
Longitud: 23465047 (22M) [application/octet-stream]
Grabando a: «latest.tar.gz»
latest.tar.gz 100%[=====================================>] 22,38M 14,8MB/s en 1,5s
2023-10-27 12:33:19 (14,8 MB/s) - «latest.tar.gz» guardado [23465047/23465047]
A continuación, descomprimiremos el archivo y copiaremos los archivos dentro del DocumentRoot de nuestro VirtualHost:
javiercruces@IWEB:~$ sudo mkdir /var/www/wordpress/
javiercruces@IWEB:~$ sudo tar -zxf latest.tar.gz -C /var/www/
Accederemos al directorio de WordPress para configurar correctamente el esquema de permisos:
javiercruces@IWEB:~$ cd /var/www/
Cambiaremos el propietario y el grupo:
javiercruces@IWEB:/var/www$ sudo chown -R www-data:www-data wordpress/
Una vez configurado todo esto, ya podemos acceder a través del navegador a nuestro dominio para iniciar la instalación de WordPress.
Instalación Web
Accedemos a la URL definida en el ServerName de nuestro sitio virtual y configurada previamente en el archivo /etc/hosts.
Lo primero será seleccionar el idioma:

A continuación, se mostrará una breve explicación sobre el CMS WordPress:

Ahora deberás introducir los datos del usuario y el nombre de la base de datos creada anteriormente:

Una vez introducidos los datos correctos, continuaremos con la instalación:

Ahora deberás introducir la información de tu sitio de WordPress, como el nombre del sitio y la creación de un usuario administrador para acceder posteriormente al panel wp-admin:

¡Listo! Ya has instalado WordPress.

Para acceder al panel de administración de WordPress, introduce la siguiente URL en tu navegador e inicia sesión con el usuario creado:

¡Listo! Así es como se ve el panel de administración de WordPress:

