Instalación de servidor · 11 min read · Sep 22, 2025
Cómo instalar Lighttpd con MariaDB y PHP-FPM en Ubuntu 22.04

El stack LLMP (Linux, Lighttpd, MariaDB y PHP-FPM) es un conjunto de software para entregar aplicaciones web. Cada componente del stack LLMP es gratuito, de código abierto y se puede instalar en múltiples sistemas operativos. El stack LLMP puede entregar sitios HTML estáticos y aplicaciones PHP como WordPress, Drupal y Joomla.
Este tutorial te mostrará cómo instalar y configurar el stack LLMP (Linux, Lighttpd, MariaDB y PHP-FPM) en el último sistema Ubuntu 22.04. Este tutorial incluye instrucciones sobre cómo configurar el Host Virtual en el servidor web Lighttpd y habilitar SSL/HTTPS.
Requisitos previos
Para este tutorial, necesitaremos los siguientes requisitos previos:
- Un servidor Ubuntu 22.04.
- Un usuario no root con privilegios de root/administrador
Instalando el servidor web Lighttpd
Lighttpd o Lighty es un servidor web de alto rendimiento creado como prueba de concepto del problema c10k “cómo manejar 10,000 conexiones en paralelo en un solo servidor”.
El Lighttpd está diseñado para velocidad, seguridad, ligereza y flexibilidad. Tiene un uso mínimo de CPU y memoria y proporciona características avanzadas como FastCGI, CGI, Auth, Compresión, Reescritura de URL y más.
Antes de instalar cualquier paquete, ejecuta el comando apt a continuación para actualizar y refrescar el índice de paquetes de tus repositorios de Ubuntu.
sudo apt updateAhora instala el servidor web Lighttpd usando el siguiente comando.
sudo apt install lighttpdIngresa Y para confirmar la instalación y presiona ENTER para continuar. Ahora comenzará la instalación de Lighttpd.

Después de que la instalación de Lighttpd haya finalizado, ejecuta el comando a continuación para iniciar y habilitar el servicio Lighttpd.
sudo systemctl start lighttpd
sudo systemctl enable lighttpdVerifica el servicio Lighttpd usando el comando a continuación. Deberías ver que el servicio Lighttpd está en ejecución y habilitado, lo que significa que se ejecutará automáticamente al iniciar el sistema.
sudo systemctl status lighttpd
Si tienes un firewall UFW ejecutándose en tu máquina Ubuntu, entonces debes agregar las reglas del firewall para el tráfico entrante al servidor web Lighttpd.
Ejecuta el comando ufw a continuación para agregar las reglas de Lighttpd al firewall UFW, luego puedes verificar la lista de reglas de UFW como a continuación.
sudo ufw allow "Lighttpd Full"
sudo ufw statusDeberías ver el perfil de aplicación “Lighttpd Full” agregado al firewall UFW, lo que significa que se permiten todos los puertos HTTP y HTTPS entrantes.

Ahora verifica el directorio “ /var/www/html“ usando el comando a continuación. Si no ves un archivo index.html, puedes crear uno usando el comando a continuación.
ls -lah /var/www/html
echo "Bienvenido al servidor web Lighttpd
" > /var/www/html/index.htmlPor último, abre tu navegador web y visita la dirección IP del servidor (es decir, http://192.168.5.28/) y deberías ver la página index.html.
Instalando el servidor MariaDB
Después de instalar el servidor web Lighttpd, es hora de instalar el servidor MariaDB en el sistema Ubuntu. Esto también incluye cómo implementar el servidor MariaDB de manera segura utilizando la herramienta “ mysql_secure_installation “ proporcionada por el paquete MariaDB.
Ejecuta el siguiente comando apt para instalar el servidor MariaDB. En el estado actual, el repositorio predeterminado de Ubuntu proporciona MariaDB v10.6.
sudo apt install mariadb-serverAhora ingresa Y para confirmar la instalación y presiona ENTER. Y comenzará la instalación de MariaDB.

Después de que la instalación de MariaDB haya finalizado, ejecuta el comando systemctl a continuación para iniciar y habilitar el servicio MariaDB.
sudo systemctl start mariadb
sudo systemctl enable mariadbVerifica el servicio MariaDB usando el siguiente comando. Y deberías ver que el servicio MariaDB está en ejecución.
sudo systemctl status mariadbA continuación, configurarás la implementación de MariaDB utilizando la herramienta “mysql_secure_installation”, que puede ayudarte a establecer la contraseña de root para el servidor MariaDB, y deshabilitar el inicio de sesión remoto de root, limpiar la base de datos predeterminada y el acceso de usuario anónimo, etc.
Ahora ejecuta el comando “mysql_secure_installation” como a continuación.
sudo mysql_secure_installationLa instalación predeterminada de MariaDB viene sin una contraseña de root. Presiona ENTER para continuar.

Ahora ingresa “ n “ para mantener el método de autenticación como predeterminado (para el usuario root de MariaDB).

Ingresa Y para establecer la contraseña de root para tu servidor MariaDB. Asegúrate de usar una contraseña fuerte para tu implementación.

Ahora ingresa Y para deshabilitar el inicio de sesión remoto para el usuario root de MariaDB. Si no estás en un entorno de clúster, siempre se recomienda deshabilitar el inicio de sesión remoto para el usuario root de MariaDB.
Ahora ingresa Y nuevamente para eliminar el usuario anónimo predeterminado de tu instalación de MariaDB.

Ingresa Y nuevamente para eliminar la base de datos de prueba predeterminada accesible por el usuario anónimo en MariaDB.

Por último, ingresa Y nuevamente para recargar todos los privilegios de tabla en tu servidor MariaDB y aplicar los nuevos cambios.

Instalando PHP-FPM 8.1
Ahora has instalado el servidor web Lighttpd y el servidor de base de datos MariaDB. Ahora instalarás PHP-FPM en tu sistema Ubuntu. En el estado actual, el repositorio de Ubuntu proporciona la última versión de PHP 8.1.
Ejecuta el comando apt a continuación para instalar PHP-FPM 8.1 en tu sistema Ubuntu.
sudo apt install php-fpm php-common php-mysql php-cli php-curl php-xmlIngresa Y para confirmar la instalación y presiona ENTER. Ahora, comenzará la instalación.

Después de que se complete la instalación de los paquetes PHP-FPM, ejecuta el siguiente comando para iniciar y habilitar el servicio PHP-FPM.
sudo systemctl start php8.1-fpm
sudo systemctl enable php8.1-fpmVerifica el servicio PHP-FPM usando el siguiente comando. Deberías ver que el servicio PHP-FPM está en ejecución.
sudo systemctl status php8.1-fpm
También puedes verificar el servicio PHP-FPM usando el comando “ ss “. El proceso PHP-FPM predeterminado se ejecuta bajo el archivo sock, y puedes verificar el proceso PHP-FPM usando el comando a continuación.
ss -pl | grep phpDeberías obtener el servicio PHP-FPM ejecutándose en el archivo sock “ /run/php/php8.1-fpm.sock “.
Configurando PHP-FPM con Lighttpd
La instalación de los paquetes del stack LLMP está completa, pero aún necesitas configurar el servidor web Lighttpd para que funcione con el servicio PHP-FPM. Y esto se puede hacer utilizando los módulos FastCGI en el servidor web Lighttpd.
Primero, edita el archivo de configuración de PHP-FPM “ /etc/php/8.1/fpm/php.ini “ usando el editor nano.
sudo nano /etc/php/8.1/fpm/php.iniAgrega la siguiente configuración al archivo.
cgi.fix_pathinfo = 1Guarda y cierra el archivo cuando hayas terminado.
Ahora reinicia el servicio PHP-FPM usando el siguiente comando para aplicar los nuevos cambios.
sudo systemctl restart php8.1-fpmA continuación, ejecuta el siguiente comando para habilitar los módulos “ fastcgi “ y “ fastcgi-php-fpm “ de Lighttpd.
sudo lighty-enable-mod fastcgi fastcgi-php-fpmEdita el archivo de configuración “ /etc/lighttpd/conf-available/15-fastcgi-php-fpm.conf “ usando el editor nano. Este archivo es la configuración del módulo fastcgi-php-fpm que se utilizará para comunicarse con el archivo sock de PHP-FPM.
sudo nano /etc/lighttpd/conf-available/15-fastcgi-php-fpm.confCambia la ruta de la opción socket a “ /run/php/php8.1-fpm.sock “ como sigue.
## Usar el servicio PHP-FPM para PHP a través de FastCGI
fastcgi.server += ( ".php" =>
((
"socket" => "/run/php/php8.1-fpm.sock",
"broken-scriptfilename" => "enable"
))
)Guarda y cierra el archivo cuando hayas terminado.
Por último, ejecuta el comando a continuación para reiniciar el servicio Lighttpd y aplicar los nuevos cambios. Ahora tu stack LLMP está listo para servir tanto aplicaciones web HTML estáticas como dinámicas en PHP.
sudo systemctl restart lighttpd
Probando Phpinfo
Para verificar la instalación de tu stack LLMP, puedes simplemente crear el script PHPINFO que te muestra la configuración detallada de Lighttpd y las configuraciones de PHP-FPM.
Ejecuta el comando a continuación para crear un nuevo script PHP “ /var/www/html/info.php “ y cambia la propiedad al usuario “ www-data “.
echo "" > /var/www/html/info.php
sudo chown -R www-data:www-data /var/www/htmlRegresa a tu navegador web y visita la dirección IP del servidor Ubuntu seguida de la ruta URL “ /info.php “ ( http://192.168.5.28/info.php). Y deberías ver la página phpinfo detallada en la siguiente captura de pantalla. Esto significa que la configuración de Lighttpd y PHP-FPM está completa y exitosa.

Configurar el Host Virtual en Lighttpd
En este punto, has completado la instalación y configuración del stack LLMP. El stack LLMP también está listo para servir una aplicación web dinámica en PHP a través de PHP-FPM. Ahora aprenderás cómo configurar el Host Virtual en el servidor web Lighttpd. El host virtual te permite ejecutar múltiples nombres de dominio en un solo servidor o dirección IP.
Ahora ejecuta el siguiente comando para crear un nuevo directorio “ /etc/lighttpd/vhosts “. Este directorio se utilizará para almacenar todas las configuraciones de hosts virtuales del servidor web Lighttpd.
sudo mkdir -p /etc/lighttpd/vhosts/Ahora edita el archivo de configuración de Lighttpd “ /etc/lighttpd/lighttpd.conf “ usando el editor nano.
sudo nano /etc/lighttpd/lighttpd.confAgrega la siguiente configuración al archivo.
include "/etc/lighttpd/vhosts/*.conf"Guarda y cierra el archivo cuando hayas terminado. Ahora estás listo para configurar el host virtual de Lighttpd.
Primero, crea el directorio Document Root para tu host virtual. En este ejemplo, el directorio Document Root será “ /var/www/hwdomain “.
mkdir -p /var/www/hwdomain/Crea un nuevo archivo “index.html” en el directorio raíz del documento “/var/www/hwdomain” y cambia la propiedad al usuario correcto “www-data”.
echo "Bienvenido al host virtual howtoforge.local
" > /var/www/hwdomain/index.html
sudo chown -R www-data:www-data /var/www/hwdomainA continuación, crea una nueva configuración de host virtual “ /etc/lighttpd/vhosts/hwdomain.conf “ usando el editor nano.
sudo nano /etc/lighttpd/vhosts/hwdomain.confAgrega la siguiente configuración al archivo. En este ejemplo, se utilizará el dominio “howtoforge.local” para el host virtual.
$HTTP["host"] =~ "(^|.)howtoforge.local$" {
server.document-root = "/var/www/hwdomain"
server.errorlog = "/var/log/lighttpd/howtoforge.local-error.log"
accesslog.filename = "/var/log/lighttpd/howtoforge.local-access.log"
}Guarda y cierra el archivo cuando hayas terminado.
Después de eso, ejecuta el siguiente comando para verificar y validar la configuración de Lighttpd. Si la configuración de Lighttpd es correcta, verás un mensaje de salida como “ Syntax OK “.
sudo lighttpd -t -f /etc/lighttpd/lighttpd.confAhora reinicia el servicio Lighttpd para aplicar la nueva configuración del host virtual usando el siguiente comando.
sudo systemctl restart lighttpd
Regresa a tu navegador web e ingresa tu nombre de dominio en la barra de direcciones (es decir, http://howtoforge.local/). Y deberías ver la página index.html predeterminada para ese host virtual.
Habilitar HTTPS en el servidor web Lighttpd
Después de configurar el host virtual de Lighttpd, ahora aprenderás cómo habilitar SSL/HTTPS en el servidor web Lighttpd.
Antes de comenzar a configurar SSL, ejecuta el comando a continuación para habilitar el módulo “ssl” para el servidor web Lighttpd. Esto creará un archivo de enlace en “ /etc/lighttpd/conf-enabled/10-ssl.conf “, que contiene la configuración básica de SSL para Lighttpd. Además, se te pedirá generar los certificados SSL para localhost con el nombre “ server.pem “
sudo lighty-enable mod sslAhora ejecuta el siguiente comando para crear y generar el certificado SSL para localhost con el nombre “ server.pem “.
openssl req -new -newkey rsa:2048 -nodes -keyout server.com.key -out server.com.csr
openssl x509 -req -days 365 -in server.com.csr -signkey server.com.key -out server.com.crtcat server.com.key server.com.crt > server.pemY ahora estás listo para implementar el SSL/HTTPS en la configuración del host virtual “ hwdomain.conf “.
Antes de comenzar a configurar el SSL para el host virtual, asegúrate de haber generado certificados SSL para tu nombre de dominio. En este ejemplo, el nombre de dominio es “howtoforge.local” y los certificados SSL están disponibles en el directorio “ /etc/letsencrypt/live/hwdomain.local “.
Edita la configuración del host virtual “ /etc/lighttpd/vhosts/hwdomain.conf “ usando el editor nano.
sudo nano /etc/lighttpd/vhosts/hwdomain.confReemplaza la configuración que acabas de crear con la siguiente configuración.
$HTTP["scheme"] == "http" {
$HTTP["host"] == "howtoforge.local" {
url.redirect = ("/.*" => "https://howtoforge.local$0")
}
}
$SERVER["socket"] == ":443" {
ssl.engine = "enable"
ssl.pemfile = "/etc/letsencrypt/live/howtoforge.local/fullchain.pem"
ssl.privkey = "/etc/letsencrypt/live/howtoforge.local/privkey.pem"
server.name = "howtoforge.local"
server.document-root = "/var/www/hwdomain"
server.errorlog = "/var/log/lighttpd/howtoforge.local-error.log"
accesslog.filename = "/var/log/lighttpd/howtoforge.local-access.log"
}Guarda y cierra el archivo cuando hayas terminado.
A continuación, ejecuta el siguiente comando para verificar y validar la configuración del servidor web Lighttpd, y asegúrate de que obtuviste un mensaje de salida como “Syntax OK”. Después de eso, puedes reiniciar el servicio Lighttpd para aplicar los nuevos cambios.
sudo lighttpd -t -f /etc/lighttpd/lighttpd.conf
sudo systemctl restart lighttpdPor último, regresa a tu navegador web y visita el nombre de dominio del host virtual con https delante de la URL (es decir, https://howtoforge.local). Si tu configuración SSL es exitosa, verás el ícono local en la URL, como se muestra en la captura de pantalla a continuación.
Conclusión
¡Felicidades! Has instalado con éxito el stack LLMP (Linux, Lighttpd, MariaDB y PHP-FPM) en el servidor Ubuntu 22.04. También has aprendido cómo configurar un host virtual en el servidor web Lighttpd y habilitar SSL/HTTPS en Lighttpd para tu nombre de dominio.
Recibe nuevas publicaciones en tu bandeja de entrada.
No spam. Cancela la suscripción en cualquier momento.