La pila LEMP es un conjunto de software que incluye Linux, Nginx (pronunciado “Engine-X”), MySQL/MariaDB y PHP. Es una alternativa popular a la pila LAMP (que usa Apache en lugar de Nginx) para servidores web debido a su alto rendimiento y eficiencia. En este artículo, te guiaremos paso a paso para configurar la pila LEMP en Debian 12. Este tutorial está diseñado para ser técnico pero accesible para los recién llegados.
Requisitos Previos
Antes de comenzar, asegúrate de tener lo siguiente:
- Un servidor con Debian 12 instalado.
- Acceso a una cuenta con privilegios de superusuario (root) o acceso a
sudo.
Paso 1: Actualizar el Sistema
Es importante asegurarse de que tu sistema esté actualizado. Abre una terminal y ejecuta los siguientes comandos:
sudo apt update
sudo apt upgrade -y
Paso 2: Instalar Nginx
Nginx es un servidor web y proxy inverso de alto rendimiento. Para instalarlo, ejecuta el siguiente comando:
sudo apt install nginx
Después de la instalación, verifica que Nginx esté funcionando:
sudo systemctl start nginx
sudo systemctl enable nginx
Abre tu navegador y navega a http://tu_dominio_o_IP. Deberías ver la página de bienvenida de Nginx.
Paso 3: Instalar MySQL/MariaDB
MariaDB es una bifurcación de MySQL y es la base de datos que usaremos en este tutorial. Para instalar MariaDB, usa el siguiente comando:
sudo apt install mariadb-server mariadb-client
Inicia el servicio de MariaDB y habilítalo para que se inicie al arrancar:
sudo systemctl start mariadb
sudo systemctl enable mariadb
Ejecuta el script de seguridad de MariaDB para mejorar la seguridad de tu instalación:
sudo mysql_secure_installation
Sigue las instrucciones en pantalla para configurar la contraseña de root y eliminar usuarios y bases de datos de prueba.
Paso 4: Instalar PHP
PHP es el lenguaje de programación del lado del servidor que permite generar contenido dinámico. Para instalar PHP junto con algunos módulos necesarios, ejecuta el siguiente comando:
sudo apt install php-fpm php-mysql
Edita el archivo de configuración de PHP para ajustar el comportamiento del demonio PHP-FPM:
sudo nano /etc/php/7.4/fpm/php.ini
Asegúrate de que las siguientes directivas estén configuradas como se muestra a continuación:
cgi.fix_pathinfo=0
Reinicia el servicio PHP-FPM para aplicar los cambios:
sudo systemctl restart php7.4-fpm
Paso 5: Configurar Nginx para Usar PHP
Ahora configuraremos Nginx para que use PHP. Crea un archivo de configuración para tu sitio web:
sudo nano /etc/nginx/sites-available/tu_sitio
Añade la siguiente configuración, ajustando los valores según sea necesario:
server {
listen 80;
server_name tu_dominio_o_IP;
root /var/www/tu_sitio;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ =404;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.4-fpm.sock;
}
location ~ /\.ht {
deny all;
}
}
Habilita tu nuevo sitio y reinicia Nginx:
sudo ln -s /etc/nginx/sites-available/tu_sitio /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl restart nginx
Paso 6: Probar la Configuración de PHP
Para asegurarte de que PHP está funcionando correctamente, crea un archivo PHP en el directorio raíz de tu sitio web:
sudo nano /var/www/tu_sitio/info.php
Añade la siguiente línea de código:
<?php phpinfo(); ?>
Guarda el archivo y cierra el editor. Abre tu navegador y navega a http://tu_dominio_o_IP/info.php. Deberías ver la página de información de PHP, que confirma que PHP está funcionando correctamente.
Para mejorar el rendimiento y la gestión de tu pila LEMP, considera utilizar los servicios de Shape.host. Ofrecen soluciones de Cloud VPS que proporcionan escalabilidad, alta disponibilidad y un rendimiento superior para tus aplicaciones web. Con Shape.host, puedes asegurarte de que tu infraestructura esté siempre disponible y funcionando de manera óptima.