Solo válido en distros que usen APT.
Instalación NGINX
Para instalar el LEMP stack hemos de primero, instalar NGINX
apt-get install nginx
Para comprobar que se ha instalado correctamente hemos de entrar a la IP de nuestro servidor
http://dominio_del_servidor_o_IP
Si todo está bien veremos esto en el navegador
Instalación MySQL
Para instalar MySQL ponemos el siguiente comando
apt-get install mysql-server
No se nos pedirá contraseña, ya que en las nuevas versiones de MySQL se usan unix_sockets para autenticación. Más información en este post del blog.
Instalación PHP
Para instalar PHP ponemos el siguiente comando
apt-get install php-fpm php-mysql
Se recomienda poner el cgi.fix_pathinfo a 0, para hacerlo entramos en /etc/php/7.3/fpm/php.ini (sustituir 7.3 por la versión instalada de PHP).
cgi.fix_pathinfo=0
Guardamos el archivo y reiniciamos el servicio de PHP con este comando
systemctl restart php7.0-fpm
En mi caso lo hago con systemctl pero también se puede de otras maneras.
Configurar NGINX para que soporte PHP
Entramos a /etc/nginx/sites-available/default y lo dejamos así
server { listen 80 default_server; listen [::]:80 default_server; root /var/www/html; index index.php index.html index.htm index.nginx-debian.html; server_name server_domain_or_IP; location / { try_files $uri $uri/ =404; } location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/run/php/php7.0-fpm.sock; //usar la versión que tengamos } location ~ /\.ht { deny all; } }
Cuando lo cambiemos, guardamos el archivo y antes de reinciar el servicio comprobamos la sintaxis con
nginx -t
Seguidamente, reiniciamos el servicio
systemctl restart nginx
Comprobación de PHP
Para comprobar que PHP creamos un archivo PHP en /var/www/html que ponga, por ejemplo info.php
<?php phpinfo();
Si entramos a nuestro servidor por HTTP a la ruta /info.php deberiamos ver información sobre la versión de PHP.
Recomiendo eliminar este archivo, just in case.
Fuente: digitalocean.com