El software de servidor web Nginx puede in­s­ta­lar­se en Ubuntu en unos pocos pasos. Aprende a in­s­ta­lar­lo y conoce los re­qui­si­tos que debe cumplir el servidor.

¿Cuáles son los re­qui­si­tos de un servidor web Nginx?

Para usar Nginx necesitas un servidor con Linux como sistema operativo. Ubuntu ha de­mo­s­tra­do ser una di­s­tri­bu­ción sencilla y estable. La capacidad que necesite tu Ubuntu server depende de tu proyecto. Incluso una co­n­fi­gu­ra­ción de hardware sencilla puede ser su­fi­cie­n­te para una página web sencilla. Nginx es famoso por ahorrar recursos sin co­m­pro­me­ter el re­n­di­mie­n­to.

Para empezar, te re­co­me­n­da­mos:

  • 100 GB de al­ma­ce­na­mie­n­to
  • 6 GB de RAM
  • 1 núcleo de CPU

Cuando pagas por un servidor cloud FLEX de IONOS, puedes co­n­fi­gu­rar el hardware a tu medida. Cuando crezcan tus ne­ce­si­da­des, solo tienes que ajustar la co­n­fi­gu­ra­ción.

Consejo

A veces un servidor cloud no es la opción más adecuada para tu proyecto. Con IONOS, también puedes tener un servidor dedicado asequible, donde solo tú tienes acceso al hardware, y un VPS con vi­r­tua­li­za­ción completa.

Para que otros en­cue­n­tren tu servidor web en Internet, también ne­ce­si­ta­rás un dominio.

Domain checker

Guía paso a paso para la in­s­ta­la­ción de Nginx en Ubuntu 20.04

Puedes instalar y co­n­fi­gu­rar Nginx en Ubuntu en muy pocos pasos.

Paso 1. Descarga e instala el software

Antes de instalar Nginx, actualiza primero la gestión de paquetes de tu sistema:

sudo apt update
sudo apt upgrade
bash

Instala Nginx en tu sistema:

sudo apt install nginx
bash

Ahora confirma el proceso de in­s­ta­la­ción.

Paso 2. Libera el puerto

Para poder acceder ex­te­r­na­me­n­te a tu servidor web, tendrás que co­n­fi­gu­rar tu firewall. En Ubuntu, el programa Un­co­m­pli­ca­ted Firewall (UFW) es el re­s­po­n­sa­ble. Para conseguir una co­n­fi­gu­ra­ción lo más re­s­tri­c­ti­va posible, elige el siguiente comando:

sudo ufw allow 'Nginx HTTP'
bash

Esto abrirá el puerto 80. Puede que tengas que repetirlo en la co­n­fi­gu­ra­ción del host. En el panel de IONOS Cloud, puedes hacerlo a través del firewall.

Imagen: Panel IONOS Cloud: configuración del cortafuegos con el puerto 80 compartido
Habilita el puerto 80 en la co­n­fi­gu­ra­ción del servidor para que los vi­si­ta­n­tes puedan acceder a tu servidor web.

Paso 3. Probar, iniciar y detener el servidor

Comprueba si la in­s­ta­la­ción del servidor web se ha realizado co­rre­c­ta­me­n­te. Para ello, introduce el siguiente comando en la terminal:

systemctl status nginx
bash

En la respuesta, deberías ver que el estado del servidor es activo. Además, puedes llamar al servidor desde el navegador. Para ello, introduce la dirección IP del servidor en la barra de di­re­c­cio­nes del navegador.

Imagen: Mensaje de bienvenida de un servidor web Nginx en el navegador
Si todo ha salido bien, verás la bie­n­ve­ni­da de Nginx.

También puedes iniciar el servidor ma­nua­l­me­n­te:

sudo nginx
bash

Además de este comando, hay otros que puedes utilizar para controlar tu servidor web Nginx:

  • stop: detiene in­me­dia­ta­me­n­te el servidor web en ejecución
  • quit: detiene el servidor web en ejecución después de que se hayan efectuado los procesos
  • reload: vuelve a cargar el archivo de co­n­fi­gu­ra­ción

Los comandos pueden fo­r­mu­lar­se siguiendo el siguiente patrón:

sudo nginx stop
bash

Paso 4. Crear una página de prueba

Nginx genera au­to­má­ti­ca­me­n­te una página web con un mensaje de bie­n­ve­ni­da en Ubuntu 20.04. Puedes encontrar el documento HTML co­rre­s­po­n­die­n­te en /var/www/html/. Ahora puedes crear más do­cu­me­n­tos HTML en esta carpeta y de­sa­rro­llar tu propia página web. Sin embargo, es mejor dejar la carpeta intacta y crear una nueva carpeta para tu propio dominio. Para ello, ejecuta el siguiente comando:

sudo mkdir -p /var/www/example.com/html
bash

En este ejemplo, se utiliza el nombre de dominio example.com. Sustituye todas las menciones por tu propio nombre de dominio y asigna los derechos:

sudo chown -R $USER:$USER /var/www/example.com/html
sudo chmod -R 755 /var/www/example.com
bash

En la nueva carpeta, crea tu primer documento HTML: la página de inicio de tu proyecto:

sudo nano /var/www/example.com/html/index.html
bash

Puedes diseñar la página como mejor te parezca. Aquí tienes un ejemplo sencillo que puedes completar con tu propio contenido:

<html>
    <head>
        <title>Example</title>
    </head>
    <body>
        <h1>Test</h1>
        <p>Welcome to your first website<p>
    </body>
</html>
bash

Guarda y cierra el documento.

El servidor web mostrará el saludo pre­de­te­r­mi­na­do, por lo que debes indicar a Nginx que debe invocar el nuevo contenido. Para ello, crea un nuevo archivo de co­n­fi­gu­ra­ción en la carpeta Nginx:

sudo nano /etc/nginx/sites-available/example.com
bash

Inserta un server block en este archivo:

server {
    listen 80;
    listen [::]:80;
    root /var/www/example.com/html;
    index index.html index.htm index.nginx-debian.html;
    server_name example.com www.example.com;
    location / {
        try_files $uri $uri/ =404;
    }
}
bash

Asegúrate de es­pe­ci­fi­car aquí el puerto correcto. Si has seguido las in­di­ca­cio­nes, habrás ha­bi­li­ta­do el puerto 80. Guarda y cierra el archivo.

Acabas de crear un archivo de co­n­fi­gu­ra­ción en la carpeta sites-available. Ahora, necesitas crear un acceso directo en la carpeta sites-enabled. Nginx utiliza esta carpeta al iniciarse para de­te­r­mi­nar qué sitio debe servir.

sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/
bash

Reinicia el servidor:

sudo systemctl restart nginx
bash

Si accedes a tu dominio en el navegador, debería aparecer tu nueva página web.

Ir al menú principal