Lighttpd es un servidor web de código abierto que se centró en la simplicidad y el alto rendimiento. es un servidor web liviano con un consumo de memoria pequeño y bajo, pero que aún cumple con los estándares, es seguro y flexible. El servidor web Lighttpd es parte de la pila LLMP, que significa Linux, Lighttpd, MySQL/MariaDB y PHP/PHP-FPM.
En este tutorial, le mostraremos cómo instalar y configurar la pila LLMP en el servidor CentOS 8. Instalaremos el servidor web Lighttpd con el servidor de base de datos MariaDB y el PHP-FPM en la última versión del servidor CentOS 8.
Requisitos previos
- servidor CentOS 8
- Privilegios de raíz
- Comprender el servidor CentOS básico
¿Qué haremos?
- Instalar servidor web Lighttpd
- Instalar servidor de base de datos MariaDB
- Instalar PHP-FPM
- Configurar Lighttpd y PHP-FPM
- Pruebas
Paso 1:instalar el servidor web Lighttpd
Primero, agregaremos el repositorio EPEL e instalaremos el servidor web Lighttpd en nuestro sistema CentOS 8. De forma predeterminada, Lighttpd está disponible en el repositorio EPEL (Extract Packages for Enterprise Linux).
Agregue el repositorio EPEL al sistema CentOS 8 usando el comando DNF a continuación.
sudo dnf install epel-release
Después de eso, verifique todos los repositorios disponibles usando el siguiente comando.
dnf repolist
Ahora asegúrese de obtener el repositorio EPEL en el resultado.
Luego, instale los paquetes Lighttpd usando el siguiente comando.
sudo dnf install lighttpd -y
Una vez completada toda la instalación, inicie el servicio Lighttpd y agréguelo al inicio del sistema.
systemctl start lighttpd
systemctl enable lighttpd
Ahora verifique el estado del servicio Lighttpd usando el siguiente comando.
systemctl status lighttpd
A continuación se muestra el resultado que obtendrá.
Como resultado, el servicio Lighttpd está activo y funcionando en el sistema CentOS 8.
Luego, agregue el servicio HTTP a la lista de reglas de firewalld usando el comando 'firewall-cmd' a continuación.
firewall-cmd --add-service=http --permanent
firewall-cmd --reload
Ahora abra su navegador web y escriba la dirección IP del servidor en la barra de direcciones.
http://192.168.1.50/
Como resultado, obtendrá el 'index.html' predeterminado del servidor web Lighttpd.
Paso 2:instalar el servidor de base de datos MariaDB
En este paso, instalaremos el servidor de la base de datos MariaDB y configuraremos la contraseña raíz predeterminada para el servidor MariaDB.
Para instalar el servidor de la base de datos MariaDB, ejecute el siguiente comando dnf.
sudo dnf install mariadb-server -y
Una vez finalizada toda la instalación, inicie el servicio MariaDB y agréguelo al inicio del sistema.
systemctl start mariadb
systemctl enable mariadb
Ahora verifique el servicio MariaDB usando el siguiente comando.
systemctl status mariadb
A continuación se muestra el resultado que obtendrá.
Como resultado, el servicio MariaDB está activo y funcionando en el sistema CentOS 8.
A continuación, ejecute el siguiente comando 'mysql_secure_installation' para configurar la contraseña raíz predeterminada.
mysql_secure_installation
Ahora escriba la nueva contraseña para su servidor MariaDB y escriba 'Y' para todas las configuraciones.
Enter current password for root (enter for none):
OK, successfully used password, moving on...
Set a root password? [Y/n] Y
Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] Y
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y
Y la contraseña raíz de MariaDB ha sido configurada.
A continuación, inicie sesión en el shell de MySQL utilizando el usuario raíz predeterminado y su contraseña.
mysql -u root -p
Una vez que haya iniciado sesión, verifique todos los usuarios disponibles en el servidor MariaDB utilizando las siguientes consultas.
select User,Host from mysql.user;
Y obtendrá todos los usuarios predeterminados para el servidor MySQL. Ahora escriba 'salir' para cerrar sesión en el shell de MySQL.
Como resultado, se completó la instalación y configuración del servidor de la base de datos MariaDB en el sistema CentOS 8.
Paso 3:instalar y configurar PHP-FPM
Para este paso, instalaremos y configuraremos PHP-FPM para el servidor web Lighttpd.
Instale los paquetes PHP y PHP-FPM usando el comando dnf a continuación.
sudo dnf install php php-fpm lighttpd-fastcgi php-mysqlnd php-pdo php-gd php-mbstring
Una vez completada toda la instalación, edite la configuración '/etc/php-fpm.d/www.conf' usando el editor vim.
vim /etc/php-fpm.d/www.conf
Cambie el 'usuario' y el 'grupo' predeterminados a Lighttpd como se muestra a continuación.
user = lighttpd
group = lighttpd
Cambie la escucha PHP-FPM predeterminada usando la dirección IP local con el puerto '9000'.
listen = 127.0.0.1:9000
Guardar y cerrar.
Luego, edite la configuración PHP '/etc/php.ini' usando el editor vim.
vim /etc/php.ini
Descomente la siguiente línea para obtener soporte con PHP-CGI para el servidor web Lighttpd.
cgi.fix_pathinfo=1
Guardar y cerrar.
A continuación, inicie el servicio PHP-FPM y agréguelo al inicio del sistema.
systemctl start php-fpm
systemctl enable php-fpm
El servicio PHP-FPM está en funcionamiento, compruébalo con el siguiente comando.
ss -plnt
systemctl status php-fpm
A continuación se muestra el resultado que obtendrá.
Como resultado, PHP-FPM está funcionando en el servidor CentOS 8 con la dirección IP local y el puerto '9000'.
Paso 4:configurar Lighttpd y PHP-FPM
En este paso, configuraremos Lighttpd para que funcione con nuestra instalación de PHP-FPM.
De forma predeterminada, Lighttpd se puede usar para servir una aplicación web PHP de dos maneras:
- Servir a través del servicio PHP-FPM
- Servir a través de PHP-CI de generación automática
Para hacerlo, debemos habilitar el módulo FastCGI en el servidor web Lighttpd y agregar nuestra configuración al archivo de configuración del módulo FastCGI.
- Habilitar módulo FastCGI
Antes de continuar, vaya al directorio '/etc/lighttpd/' y edite la configuración 'modules.conf' usando el editor vim.
cd /etc/lighttpd/
vim modules.conf
Descomente el módulo 'FastCGI' como se muestra a continuación.
##
## FastCGI (mod_fastcgi)
##
include "conf.d/fastcgi.conf"
Guardar y cerrar.
A continuación, debemos agregar nuestra configuración de PHP al archivo de configuración 'conf.d/fastcgi.conf'.
Dentro del directorio '/etc/lighttpd', edite la configuración de FastCGI 'conf.d/fastcgi.conf' usando el editor vim.
vim conf.d/fastcgi.conf
- Uso con el servicio PHP-FPM
Si desea utilizar el servicio PHP-FPM, que ya se está ejecutando en la dirección IP local con el puerto TCP '9000', pegue la siguiente configuración.
fastcgi.server += ( ".php" =>
((
"host" => "127.0.0.1",
"port" => "9000",
"broken-scriptfilename" => "enable"
))
)
Guardar y cerrar.
- Uso del servicio PHP de generación automática
A continuación, si desea utilizar PHP-CGI de generación automática para Lighttpd, pegue la siguiente configuración en él.
fastcgi.server = ( ".php" =>
((
"bin-path" => "/usr/bin/php-cgi",
"socket" => "/var/run/lighttpd/php.socket",
"max-procs" => 4,
"bin-environment" => (
"PHP_FCGI_CHILDREN" => "",
"PHP_FCGI_MAX_REQUESTS" => "500"
),
"broken-scriptfilename" => "enable"
))
)
Guardar y cerrar.
A continuación, cree un nuevo directorio '/var/run/lighttpd' y cambie la propiedad de ese directorio al usuario 'lightttd'.
mkdir -p /var/run/lighttpd
sudo chown -R lighttpd:lighttpd /var/run/lighttpd
Ahora reinicie el servicio Lighttpd para aplicar la nueva configuración.
systemctl restart lighttpd
Asegúrese de que no haya ningún error y, como resultado, la configuración de Lighttpd con el servicio PHP-FPM o el uso de PHP-CGI se haya completado correctamente.
Paso 5 - Prueba
Para probar nuestra instalación de LLMP, crearemos un nuevo archivo phpinfo en el directorio raíz de documentos de Lighttpd predeterminado.
Vaya al directorio '/var/www/lighttpd' y cree un nuevo archivo php 'info.php' usando el editor vim.
cd /var/www/lighttpd/
vim info.php
Pegue el siguiente script en él.
<?php
phpinfo();
?>
Guardar y cerrar.
A continuación, abra su navegador web y escriba la dirección IP del servidor seguida del archivo 'info.php' como se muestra a continuación.
http://192.168.1.50/info.php
Ahora obtendrá el resultado como se muestra a continuación.
Como puede verse, el PHP-FPM funciona con el servidor web Lighttpd.
Como resultado, la instalación de LLMP Stack (Linux, Lighttpd, MariaDB y PHP-FPM) en el servidor CentOS 8 se completó con éxito.
Paso 6 - Adicional:Comprobación de los servicios de PHP y Lighttpd
Si está ejecutando Lighttpd con el servicio PHP autogenerado usando la siguiente configuración.
Puede verificar el servicio PHP usando el siguiente comando.
ss -pl | grep php
systemctl status php-fpm
A continuación se muestra el resultado que obtendrá.
Como se puede ver, el proceso PHP autogenerado se ejecuta en un archivo de 4 sockets. Incluso el servicio PHP-FPM está inactivo, Lighttpd sigue funcionando para procesar aplicaciones PHP.