marzo 1, 2020

Instalación de LEMP stack (NGINX, MySQL, PHP) en Linux

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

Permalink del post.

  • LinkedIn
  • Tumblr
  • Reddit
  • Google+
  • Pinterest
  • Pocket