Búsqueda de sitios web

Instale Nginx con bloques de servidor (hosts virtuales) en Debian 10


Nginx es un servidor web de alto rendimiento muy popular que combina el poder del proxy inverso, el equilibrio de carga, el almacenamiento en caché y mucho más. Dependiendo de cómo esté configurado, puede actuar como proxy inverso y como equilibrador de carga para servidores HTTP/HTTPS.

El servidor web Nginx tiene una capacidad fenomenal para atender miles de conexiones simultáneas y esto lo convierte en el servidor web más rápido, alimentando más de la mitad de los sitios más concurridos del mundo. Estos incluyen Netflix, DuckDuckGo y DropBox, por mencionar solo algunos.

Lea también: Cómo instalar Apache con hosts virtuales en Debian 10

En este tutorial, lo guiaremos a través de los pasos sobre cómo instalar Nginx con hosts virtuales para alojar múltiples dominios en un servidor Debian 10.

Requisitos previos

Antes de comenzar, asegúrese de que se cumplan los siguientes requisitos:

  1. Una instancia de Debian 10.
  2. Un Nombre de dominio completo (FQDN) que apunta al servidor.
  3. En esta guía, utilizamos el dominio linux-console.net que apunta a un sistema Debian 10 con una dirección IP 192.168.0.104.
  4. Una buena conexión a Internet.

Paso 1: actualice el repositorio de paquetes de Debian 10

Antes que nada, necesitamos actualizar nuestro repositorio de paquetes local a las últimas versiones. Para lograr esto, inicie sesión como usuario normal con privilegios sudo y ejecute el siguiente comando.

sudo apt update -y

Paso 2: instale Nginx en Debian 10

Dado que Nginx está presente en los repositorios de Debian, podemos instalarlo cómodamente utilizando el administrador de paquetes apt que viene con Debian.

sudo apt install nginx -y

Paso 3: verificar el estado del servidor web Nginx

Si no encontró errores, entonces el servidor web Nginx se instaló correctamente. Es prudente verificar el estado del servidor web antes de realizar más configuraciones.

Para verificar el estado de Nginx, ejecute:

systemctl status nginx

Si el servidor web está funcionando, recibirá la siguiente notificación.

Si desea reiniciar el servidor web Nginx, ejecute el comando.

systemctl restart nginx

Para detener Nginx, emita el comando.

systemctl stop nginx

Para iniciar el servidor web, ejecute.

systemctl start nginx

Para configurar el servidor web Nginx para que se inicie al ejecutar el arranque.

systemctl enable nginx

Lea también: Los 10 comandos Nginx más utilizados que todo usuario de Linux debe conocer

Paso 4: configurar el firewall para abrir el puerto Nginx

Con Nginx instalado y ejecutándose correctamente, debemos permitir el acceso web al servicio, especialmente a usuarios externos. Si tiene habilitado el firewall UFW, debe permitir el acceso HTTP a través del firewall.

Para lograr esto, ejecute el comando.

sudo ufw allow 'Nginx HTTP'

A continuación, vuelva a cargar el firewall para efectuar los cambios.

sudo ufw reload

Genial, ahora puedes verificar que HTTP esté permitido a través del firewall ejecutando.

sudo ufw status

En el fragmento anterior, podemos ver claramente que se ha permitido Nginx HTTP a través del firewall UFW.

Paso 5: acceder al servidor web Nginx

Hasta ahora hemos realizado las configuraciones básicas para que Nginx esté en funcionamiento. Para acceder al servidor web a través del navegador web, busque la dirección IP del servidor como se muestra.

http://server-IP-address

Esta es una confirmación de que Nginx está en funcionamiento.

Paso 6: Configurar los bloques del servidor Nginx en Debian 10

Este es un paso opcional y resulta útil cuando desea alojar varios dominios en un servidor web Nginx. Para que esto funcione, necesita tener un nombre de dominio que apunte a su servidor Debian.

Para esta sección, usaremos el nombre de dominio linux-console.net cuyo registro A apunta a la IP del servidor 192.168.0.104.

Cuando apunta el nombre de dominio a la dirección IP de su servidor, el nombre de dominio pronto cambiará y apuntará a su servidor web como se muestra.

Ahora creemos un bloque de servidor.

En primer lugar, creemos un directorio para nuestro dominio como se muestra.

sudo mkdir -p /var/www/html/linux-console.net

Luego asigne la propiedad del archivo requerida como se muestra.

sudo chown -R $USER:$USER /var/www/html/linux-console.net

A continuación, asigne permisos de lectura y ejecución al grupo y a los usuarios públicos como se muestra.

sudo chmod -R 755 /var/www/html/linux-console.net

Ahora creemos una página web de muestra simple index.html usando el editor de texto vim.

sudo vim /var/www/html/linux-console.net/index.html

Agregue contenido de muestra al archivo. Esto se mostrará en el navegador.

<html>
    <head>
        <title>Welcome to Linux geeks</title>
    </head>
    <body>
        <h1>Success! Welcome to your new server block on Tecmint Nginx Web Server !</h1>
    </body>
</html>

Guardar y salir del editor.

Para que se publique este contenido, es necesario crear un bloque de servidor.

Creemos un bloque de servidor

vim  /etc/nginx/sites-available/linux-console.net

Copie y pegue el siguiente contenido en el archivo de bloque del servidor.

server {
        listen 80;
        listen [::]:80;

        root /var/www/html/linux-console.net;
        index index.html index.htm index.nginx-debian.html;

        server_name linux-console.net linux-console.net;

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

Asegúrese de actualizar el nombre de dominio linux-console.net con su propio nombre de dominio.

Para activar o habilitar el archivo de bloqueo del servidor, cree un enlace simbólico como se muestra.

sudo ln -s /etc/nginx/sites-available/linux-console.net /etc/nginx/sites-enabled/

Para verificar que todas las configuraciones en Nginx estén configuradas correctamente, ejecute.

sudo nginx -t

¡Genial, estamos listos para comenzar! Finalmente reinicie Nginx.

sudo systemctl restart nginx

Dirígete a tu navegador y actualiza y, si todo salió bien, el navegador debería mostrar la página web de bloqueo de tu servidor como se muestra.

Paso 7: acceder a los archivos de registro de Nginx

Para acceder a los archivos de registro sobre las solicitudes realizadas a su servidor, acceda al archivo siguiente.

sudo vim /var/log/nginx/access.log 

En caso de que encuentre errores en su servidor web Nginx, examine el archivo en busca de errores.

sudo vim /var/log/nginx/error.log
Conclusión

En esta guía, aprendió cómo instalar Nginx en su instancia de Debian 10 y cómo configurarla para admitir dominios adicionales. Esperamos que esta guía le haya resultado útil. Tus comentarios serán apreciados.