Cómo instalar Lighttpd con PHP-FPM 7 y MySQL 5.7 en Ubuntu 18.04 LTS

Lighttpd (pron. como lighty) es un servidor web de código abierto optimizado para un alto rendimiento. Es un servidor web seguro, rápido, compatible con los estándares y muy flexible, diseñado para un entorno de alto rendimiento. Ocupa muy poca memoria (en comparación con otros servidores web) y gestiona eficazmente la carga de la CPU.

El servidor web Lighttpd es una de las soluciones perfectas para todo servidor que sufra problemas de carga. Viene con un conjunto de características avanzadas como FastCGI, CGI, Auth, Output-Compression, URL Rewriting, y muchas más.

En este tutorial, te mostraremos cómo instalar Lighttpd con PHP-FPM 7.2 y MySQL Server 5.7 en el último Ubuntu 18.04. También te mostraremos la instalación y configuración de phpMyAdmin con el servidor web Lighttpd.

Requisitos previos

Para esta guía, instalaremos la pila Lighttpd en el servidor Ubuntu 18.04 con 2GB de RAM, 25GB de espacio libre en disco y 2CPUs. Además, debes tener privilegios de root para modificar el sistema.

Ejecuta el siguiente comando sudo para obtener los privilegios de root.

sudo -s

¿Qué vamos a hacer?

  • Instalar el servidor MySQL 5.7
  • Instalar el servidor web Lighttpd
  • Instalar PHP-FPM 7.2
  • Configurar PHP-FPM con Lighttpd
  • Añadir soporte para MySQL a PHP-FPM
  • Instalar phpMyAdmin

Paso 1 – Instalar el Servidor MySQL 5.7

En primer lugar, instalaremos el Servidor MySQL en el sistema Ubuntu. Está disponible por defecto en el repositorio de Ubuntu, puedes instalar los paquetes de MySQL utilizando el comando apt que aparece a continuación.

apt install mysql-server mysql-client -y

Una vez completada la instalación, inicia el servicio MySQL y añádelo al arranque del sistema.

systemctl start mysql
systemctl enable mysql

El servicio MySQL está en marcha.

A continuación, vamos a configurar la contraseña del usuario root en MySQL. Ejecuta el comando ‘mysql_secure_installation’ que aparece a continuación.

mysql_secure_installation

Ahora se te pedirán algunas preguntas sobre la instalación de MySQL.

VALIDATE PASSWORD PLUGIN can be used to test passwords
and improve security. It checks the strength of the password
and allows the users to set only those passwords which are
secure enough. Would you like to set up a VALIDATE PASSWORD plugin?
Press y|Y for Yes, any other key for No: --> Press Enter Here
New password: --> Type Your Password
Re-enter new password: --> Repeat Your Password
Remove anonymous users? (Press y|Y for Yes, any other key for No) : Y
Disallow root login remotely? (Press y|Y for Yes, any other key for No) : Y
Remove test database and access to it? (Press y|Y for Yes, any other key for No) : Y
Reload privilege tables now? (Press y|Y for Yes, any other key for No) : Y

Como resultado, se ha configurado la contraseña de root de MySQL.

Paso 2 – Instalar el servidor web Lighttpd

En este paso, instalaremos el Lighttpd desde el repositorio oficial de Ubuntu.

Instala el servidor Lighttpd utilizando el comando apt que aparece a continuación.

apt install lighttpd -y

Una vez completada la instalación, comprueba el estado del servicio Lighttpd utilizando el siguiente comando.

systemctl is-enabled lighttpd
systemctl status lighttpd

El servicio Lighttpd está en funcionamiento, se añade automáticamente al arranque del sistema durante la instalación.

Ahora abre tu navegador web y escribe la dirección IP del servidor en la barra de direcciones.

http://45.76.186.133/

Y obtendrás la página index.html por defecto del servidor web Lighttpd.

Como puedes ver, tienes información relacionada con la instalación de Lighttpd.

  • La raíz del documento está en el directorio ‘/var/www/html’.
  • La configuración de Lighttpd se encuentra en ‘etc/lighttpd/lighttpd.conf’.
  • Todos los módulos disponibles para Lighttpd se encuentran en el directorio ‘/etc/lighttpd/conf-available’.
  • Y todos los módulos habilitados se encuentran en el directorio ‘/etc/lighttpd/conf-enabled’.

Paso 3 – Instalar PHP-FPM 7.2

En este paso, instalaremos el PHP-FPM 7.2 en el sistema Ubuntu. Se utilizará como lenguaje de procesamiento backend con Lighttpd.

Instala PHP-FPM 7.2 utilizando el comando apt que aparece a continuación.

apt install php-fpm

Una vez completada la instalación, edita la configuración ‘php.ini’ para PHP-FPM utilizando el editor vim.

vim /etc/php/7.2/fpm/php.ini

Descomenta la opción ‘cgi.fix_pathinfo’ y cambia el valor a ‘0’.

cgi.fix_pathinfo=0

Guarda y cierra.

A continuación, reinicia el servicio PHP-FPM y añádelo al arranque del sistema.

systemctl restart php7.2-fpm
systemctl enable php7.2-fpm

El PHP-FPM está en funcionamiento en el sistema Ubuntu, compruébalo con el siguiente comando.

netstat -pl | grep php
systemctl status php7.2-fpm

Como resultado, el PHP-FPM se está ejecutando bajo el archivo sock del sistema ‘/run/php/php7.2-fpm.sock’.

Paso 4 – Configurar Lighttpd con PHP-FPM

Después de instalar los paquetes de PHP-FPM, configuraremos el PHP-FPM con el servidor web Lighttpd. Activaremos el módulo PHP-FastCGI para el servidor web Lighttpd y editaremos la configuración por defecto del backend PHP-FPM.

Ve al directorio de configuración de Lightttpd ‘/etc/lighttpd/conf-available/’.

cd /etc/lighttpd/conf-available/

Copia la configuración FastCGI por defecto como copia de seguridad y edita el archivo real utilizando el editor vim.

cp 15-fastcgi-php.conf 15-fastcgi-php.conf.orig
vim 15-fastcgi-php.conf

Ahora cambia la configuración como se indica a continuación.

# -*- depends: fastcgi -*-
# /usr/share/doc/lighttpd/fastcgi.txt.gz
# http://redmine.lighttpd.net/projects/lighttpd/wiki/Docs:ConfigurationOptions#mod_fastcgi-fastcgi

## Start an FastCGI server for php (needs the php5-cgi package)
fastcgi.server += ( «.php» =>
((
«socket» => «/run/php/php7.2-fpm.sock»,
«broken-scriptfilename» => «enable»
))
)

Guarda y cierra.

A continuación, activa los módulos FastCGI y FastCGI-PHP para Lighttpd utilizando el siguiente comando

lighttpd-enable-mod fastcgi
lighttpd-enable-mod fastcgi-php

El comando ‘lighttpd-enable-mod’ creará un archivo de configuración symlink al directorio ‘/etc/lighttpd/conf-enabled/’. Compruébalo con el siguiente comando.

ls -lah /etc/lighttpd/conf-enabled/

Y el módulo FastCGI y FastCGI-PHP para Lighttpd ha sido habilitado, ahora reinicia el servicio Lighttpd para aplicar la nueva configuración.

systemctl force-reload lighttpd

Como resultado, la configuración de Lighttpd con PHP-FPM se ha completado.

Paso 5 – Añadir soporte para MySQL en PHP-FPM

En este paso, instalaremos paquetes PHP adicionales en el sistema Ubuntu. Añadiremos el soporte de MySQL al PHP-FPM.

Instala los paquetes adicionales de PHP utilizando el comando apt que aparece a continuación.

apt install php-apcu php-mysql php-curl php-gd php-intl php-pear php-imagick php-imap php-memcache php-pspell php-recode php-sqlite3 php-tidy php-xmlrpc php-xml php-mbstring php-gettext -y

Después, reinicia los servicios PHP-FPM y Lighttpd utilizando el comando systemctl que aparece a continuación.

systemctl restart php7.2-fpm
systemctl restart lighttpd

Como resultado, se ha instalado el paquete adicional de PHP y se ha añadido el soporte de MySQL para PHP.

Paso 6 – Prueba con phpinfo

Ahora crea un nuevo archivo PHP en el directorio raíz del documento ‘/var/www/html/info.php’ utilizando el editor vim.

vim /var/www/html/info.php

Pega el script phpinfo que aparece a continuación.

<?php
phpinfo();
?>

Guarda y cierra.

A continuación, abre tu navegador web y escribe la dirección IP del servidor a continuación del archivo ‘info.php’ como se indica a continuación

http://10.5.5.45/info.php

Ahora obtendrás información sobre tu instalación de PHP.

Desplázate hacia abajo en la página y obtendrás la sección de soporte de MySQL y MySQLnd como se indica a continuación.

La instalación de Lighttpd con PHP-FPM y MySQL Server se ha completado con éxito.

Paso 7 – Instalar phpMyAdmin con lighttpd

En este paso, instalaremos el phpMyAdmin junto con el servidor web Lighttpd.

Los paquetes de phpMyAdmin están disponibles por defecto en el repositorio de Ubuntu, instálalos con el comando apt que aparece a continuación.

apt install phpmyadmin

Durante la instalación de phpMyAdmin, se te pedirá alguna configuración.

Para la configuración del servidor web, selecciona el‘lighttpd‘ y elige‘OK’.

Ahora configura el phpMyAdmin con el dbconfig-common, elige ‘YES‘.

Escribe la contraseña del usuario MySQL ‘phpmyadmin’ y elige de nuevoOK’.

Repite la contraseña y elige ‘OK‘ para finalizar.

Una vez completada la instalación, aparecerá un mensaje de error como el que se muestra a continuación.

Para solucionar el error de instalación de phpMyAdmin, ejecuta el siguiente comando.

systemctl force-reload lighttpd
apt install phpmyadmin -y

El phpMyAdmin se reinstalará sin ningún error.

A continuación, concede todos los privilegios de las bases de datos MySQL al usuario ‘phpmyadmin’.

Accede al shell de MySQL con el usuario root como se indica a continuación.

mysql -u root -p

Permite todo el acceso del usuario ‘phpmyadmin’ al sistema MySQL utilizando la siguiente consulta.

grant all privileges on *.* to 'phpmyadmin'@'localhost' with grant option;
flush privileges;

Ahora escribe ‘exit’ para salir del shell de MySQL.

A continuación, abre tu navegador web y escribe la dirección IP del servidor seguida de la ruta ‘/phpmyadmin’ como se indica a continuación

http://10.5.5.35/phpmyadmin/

Obtendrás la página de inicio de sesión de phpMyAdmin como se indica a continuación.

Escribe el usuario ‘phpmyadmin’ y tu contraseña, y haz clic en el botón‘Go’ para iniciar la sesión.

Ahora obtendrás el panel de control de phpMyAdmin como se muestra a continuación.

Como resultado, la instalación y configuración de phpMyAdmin con el servidor web Lighttpd, PHP-FPM y el servidor MySQL en Ubuntu 18.04 se ha completado con éxito.

Scroll al inicio