LEMP (una pila de servidor) significa Linux, Nginx, MariaDB y PHP. Nginx es un servidor web HTTP gratuito, de código abierto y de alto rendimiento; conocido por su estabilidad, rico conjunto de funciones, configuración simple y bajo consumo de recursos.
Aquí, hablaremos sobre cómo instalar LEMP Stack en Debian 9 con soporte PHP (a través de PHP-FPM) y soporte MariaDB.
Instalar la pila LEMP
Instalar Linux
Aquí está la publicación sobre la instalación paso a paso de Debian 9 y la actualización de Debian 8 Jessie a Debian 9 Stretch. Continúe con la instalación de AMP (Nginx v1.14, PHP v7.3, MariaDB v10.3) en Debian 9.
Instalar Nginx
Instale los paquetes para la instalación de Nginx.
sudo apt-get update sudo apt-get install -y curl wget gnupg2 ca-certificates lsb-release apt-transport-https
Descargue la clave de firma del repositorio de Nginx.
wget http://nginx.org/keys/nginx_signing.key
Agregue la clave pública de Nginx al sistema.
sudo apt-key add nginx_signing.key
Agregue el repositorio Nginx al sistema.
echo "deb http://nginx.org/packages/debian/ stretch nginx" | sudo tee /etc/apt/sources.list.d/nginx.list
Instale el paquete Nginx usando el siguiente comando.
sudo apt-get update sudo apt-get -y install nginx
Inicie el servicio Nginx después de la instalación.
sudo systemctl start nginx
Abra un navegador web y visite la siguiente URL.
http://tu-dirección-ipDeberías ver la siguiente página. Esta página confirma que Nginx se instaló correctamente en el servidor.
Raíz de documentos predeterminada de Nginx en Debian 9 es /usr/share/nginx/html/ . Los archivos de configuración se encuentran en /etc/nginx/ directorio.
Instalar MariaDB
Ahora instalaremos el servidor MariaDB emitiendo el siguiente comando.
sudo apt-get -y install mariadb-server mariadb-client
A continuación, haga que el servidor MariaDB sea seguro mediante el comando mysql_secure_installation.
Instalar PHP-FPM
PHP-FPM (PHP-FastCGI Process Manager), una implementación alternativa de PHP FastCGI. Proporciona funciones adicionales útiles para sitios de cualquier tamaño, especialmente para sitios más concurridos.
Debian 9 viene con PHP 7.0 de forma predeterminada y ya está al final de su vida útil. Entonces, usaremos el repositorio SURY para obtener PHP 7.3.
wget https://packages.sury.org/php/apt.gpg sudo apt-key add apt.gpg echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/php7.3.list
Actualice el índice del repositorio.
sudo apt-get update
Instale php-fpm emitiendo el siguiente comando.
sudo apt-get -y install php-fpm php-mysql php-cli
Editar php.ini.
sudo nano /etc/php/7.3/fpm/pool.d/www.conf
PHP-FPM escucha en el socket /var/run/php7.3-fpm.sock por defecto. Para hacer que PHP-FPM use una conexión TCP, abra el archivo /etc/php/7.3/fpm/pool.d/www.conf .
Cambiar la escucha parámetro.
listen = /run/php/php7.3-fpm.sock
PARA:
listen = 127.0.0.1:9000
Reiniciar PHP-FPM servicio.
sudo systemctl restart php7.3-fpm
Crear servidor virtual
Vamos a crear un host virtual basado en nombres en el servidor Nginx para obtener los siguientes detalles.
Nombre de dominio:server.itzgeek.local
Raíz del documento:/usr/share/nginx/html/itzgeek.local
Cree un archivo de configuración de host virtual /etc/nginx/conf.d/virtual.conf .
sudo nano /etc/nginx/conf.d/virtual.conf
Agrega el siguiente contenido.
server { server_name server.itzgeek.local; root /usr/share/nginx/html/itzgeek.local; location / { index index.html index.htm index.php; } location ~ \.php$ { include /etc/nginx/fastcgi_params; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html/itzgeek.local$fastcgi_script_name; } }
Cree el directorio raíz para el host virtual.
sudo mkdir /usr/share/nginx/html/itzgeek.local
Para probar el PHP, coloque un archivo PHP en la raíz del documento del host virtual creado.
echo "<?php phpinfo(); ?>" | sudo tee /usr/share/nginx/html/itzgeek.local/index.php
Reinicie los servicios y permita que se inicien automáticamente al iniciar el sistema.
sudo systemctl restart nginx sudo systemctl restart php7.3-fpm
Pila LEMP de prueba
Cree una entrada de host para su dominio (server.itzgeek.local ) en el /etc/hosts archivo.
vi /etc/hosts
Agregar entrada de host; la línea debería verse como a continuación.
192.168.1.10 server.itzgeek.local
Abra su navegador web y escriba su nombre de dominio en la dirección web. Ej.
http://servidor.itzgeek.localLa página se verá como a continuación:
De la captura de pantalla anterior, PHP está funcionando a través de FPM/FastCGI , como se muestra en la línea de la API del servidor. También puede ver la información de soporte de la base de datos en la parte inferior de la página.
Conclusión
Eso es todo. Comparta sus comentarios en la sección de comentarios.