Instalar LEMP (Linux, NGINX, MySQL, PHP) en Ubuntu 20.04

En un artículo anterior expliqué cómo montar un servidor web con Apache, en este caso el tutorial será para lograr la misma funcionalidad con NGINX, otro servidor web de código abierto con bastante popularidad

Lo primero que necesitamos es una instalación limpia de Ubuntu 20.04 o Debian 10 e instalar el servidor web

sudo apt install nginx

Al introducir la dirección del servidor nos debería aparecer algo parecido a esto

Instalamos MariaDB de la siguiente forma

sudo apt install mariadb-server

Usaremos el siguiente comando para mejorar la seguridad del servicio MySQL

sudo mysql_secure_installation

Para instalar el soporte para PHP usaríamos los siguientes comandos

sudo apt install php-fpm php-mysql

Algunos módulos recomendados

sudo apt install php-curl php-gd php-mbstring php-xml php-xmlrpc php-soap php-intl php-zip

Creamos un archivo de configuración en “/etc/nginx/sites-enabled” con un nombre que nos permita identificarlo con facilidad

sudo nano /etc/nginx/sites-enabled/frank.asgardius.company

El archivo quedaría parecido a este en Ubuntu 20.04

server {
    listen 80;
    server_name frank.asgardius.company sylvester.asgardius.company;
    root /var/www/html;

    index index.html index.htm index.php;

    location / {
        try_files $uri $uri/ =404;
    }

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
     }

    location ~ /\.ht {
        deny all;
    }

}

En Debian 10 quedaría así

server {
    listen 80;
    server_name frank.asgardius.company sylvester.asgardius.company;
    root /var/www/html;

    index index.html index.htm index.php;

    location / {
        try_files $uri $uri/ =404;
    }

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/var/run/php/php7.3-fpm.sock;
     }

    location ~ /\.ht {
        deny all;
    }

}

WordPress funcionará bien con esta configuración, pero Nextcloud necesitará una configuración específica que se puede encontrar en su documentación oficial

Para obtener un certificado SSL gratuito con Let’s Encrypt necesitamos instalar los siguientes paquetes

sudo apt install certbot python3-certbot-nginx

Una vez instalado solicitamos el certificado con el siguiente comando y seguimos las instrucciones

sudo certbot --nginx

Los términos de Let’s Encrypt se pueden leer en este enlace

Referencias

https://www.digitalocean.com/community/tutorials/how-to-install-linux-nginx-mysql-php-lemp-stack-on-ubuntu-20-04

Dejar un comentario