LINUX

Cómo instalar NGINX en Ubuntu 20.04 y el sitio web del host

instalar nginx en Ubuntu 20.04

NGINX es un software de servidor web de código abierto. Puede implementar NGINX como un servidor web independiente o como un proxy frente a otros servidores web (en esencia, proxy inverso). Nginx es uno de los mejores servidores web para alojar un sitio web de alto tráfico.

En este tutorial, nos centraremos en instalando NGINX como servidor web independiente en Ubuntu 20.04.

Instale NGINX en Ubuntu 20.04

Primero corre sudo apt-get update para recuperar información sobre paquetes nuevos y actualizados antes de proceder a instalar NGINX.

Nginx está disponible en el repositorio de paquetes de Ubuntu. Por lo que es fácil instalar Nginx usando el siguiente comando:

$ sudo apt-get install nginx

Verifique el estado del servicio NGINX

Hagamos una verificación rápida para confirmar el estado del servicio NGINX, ejecute el siguiente comando:

$ sudo systemctl status nginx
comprobar el estado de nginx en ubuntu 20.04
Verifique el estado de Nginx en Ubuntu 20.04

La salida del comando anterior confirma que NGINX es activo y funcionando. Si recibe un mensaje que indica que NGINX está inactivo, no se inició o no se está ejecutando, puede iniciar manualmente el servicio NGINX ejecutando el siguiente comando.

$ sudo systemctl start nginx

Para verificar la versión de Nginx, ejecute:

$ sudo dpkg -l nginx
comprobar la versión de nginx Ubuntu
Verifique la versión de Nginx en Ubuntu

La salida muestra Nginx versión 1.18.0 se está ejecutando en Ubuntu 20.04, en el momento de escribir este tutorial.

Pruebe el servidor web NGINX

Después de confirmar que el servicio NGINX está activo y en ejecución, ahora puede probar el servidor web abriendo su navegador web preferido e ingresando la dirección IP de su servidor (http: // your_server_ip) en el que está instalado NGINX.

Debería ver la página web predeterminada titulada «¡Bienvenido a nginx!«

Página web predeterminada de NGINX
Página web predeterminada de NGINX

Además, confirme que el puerto apropiado está abierto en su firewall. Por ejemplo, si ha habilitado el Cortafuegos sin complicaciones (ufw) en su servidor Ubuntu, debe intentar actualizar las reglas del firewall para permitir que NGINX se comunique en el puerto 80 y / o 443 de la siguiente manera.

Para permitir NGINX en el puerto 80:

$ sudo ufw allow 'Nginx HTTP'

Para permitir NGINX en el puerto 443:

$ sudo ufw allow 'Nginx HTTPS'

Configurar bloques de servidor NGINX

Si desea alojar varios sitios web en el mismo servidor web NGINX, deberá configurar bloques de servidor. Los bloques de servidor también se conocen como hosts virtuales (principalmente en Apache).

NGINX está preconfigurado con un solo bloque de servidor y ahí es donde se encuentran los detalles de configuración del sitio web predeterminado (/ etc / nginx / sites-available) se almacenan (/ var / www / html).

Vamos a ver.

$ sudo ls -l /etc/nginx/sites-available
total 8
-rw-r--r-- 1 root root 2416 Mar 26  2020 default

Ejecute el siguiente comando para mostrar el contenido del archivo de bloque del servidor predeterminado.

$ sudo cat /etc/nginx/sites-available/default | more

Presione la barra espaciadora en su teclado para desplazarse hacia abajo una página a la vez. Verá que el archivo contiene detalles de configuración del servidor predeterminados, como el número de puerto de escucha, la raíz del documento (es decir, la carpeta base para almacenar el contenido del sitio web), el archivo de índice y el nombre del servidor.

También debería ver una sección titulada Configuración de host virtual Como se muestra abajo. Puede configurar su sitio web adicional aquí, pero es mejor crear un archivo de bloque de servidor separado y dejar el predeterminado como está.

/ etc / nginx / sites-available / default

# Virtual Host configuration for example.com
#
# You can move that to a different file under sites-available/ and symlink that
# to sites-enabled/ to enable it.
#
#server {
#	listen 80;
#	listen [::]:80;
#
#	server_name example.com;
#
#	root /var/www/example.com;
#	index index.html;
#
#	location / {
#		try_files $uri $uri/ =404;
#	}
#}

Mientras tanto, copie la información de configuración de muestra anterior y guárdela en un editor de texto. Pronto utilizaremos esta información.

Crear la raíz del sitio web

A continuación, deberá crear una carpeta raíz en / var / www para almacenar el contenido de su sitio web adicional. Por ejemplo, voy a crear una carpeta llamada dominio1.com para mi sitio web dominio1.com.

Nota: Debe reemplazar dominio1 con su propio nombre de dominio registrado. También debe actualizar los registros DNS para apuntar su nombre de dominio a la dirección IP pública de su servidor web NGINX.

sudo mkdir /var/www/domain1.com

Crea un archivo de índice

El archivo de índice es la página web principal que se muestra cuando abre un sitio web. Ejecute el siguiente comando para crear un archivo de índice para su sitio web adicional.

$ sudo nano /var/www/domain1.com/index.html

Estoy usando nano en este ejemplo, pero puede usar su editor de texto favorito. A continuación, puede copiar y pegar el siguiente código HTML con fines de prueba.

<!DOCTYPE html>
<html>
<head>
<title>Welcome to Domain1!</title>
<style>
body {
width: 35em;
margin: 0 auto;
font-family: Tahoma, Verdana, Arial, sans-serif;
}
</style>
</head>
<body>
<h1>Welcome to Domain1!</h1>
<p>If you see this page, the Domain1 website is working!</p>
</body>
</html>

Guarde los cambios y cierre el editor de texto.

Crea un bloque de servidor

El siguiente paso es crear un archivo de bloque de servidor para contener los detalles de configuración del sitio web adicional. Ejecute el siguiente comando.

$ sudo nano /etc/nginx/sites-available/domain1

Copie la información de configuración del host virtual de muestra que guardó anteriormente y péguela en el nuevo archivo. A partir de la línea «servidor», asegúrese de eliminar todos # símbolos para descomentar las directivas. Además, recuerde reemplazar «dominio1» con su propio nombre de dominio registrado en consecuencia.

# Virtual Host configuration for example.com
#
# You can move that to a different file under sites-available/ and symlink that
# to sites-enabled/ to enable it.
#
server {
       listen 80;
       listen [::]:80;

       server_name domain1.com www.domain1.com;

       root /var/www/domain1.com;
       index index.html;

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

Guarde los cambios y cierre este archivo.

Habilitar el bloqueo del servidor

Para que NGINX sepa que el sitio web adicional está disponible, ejecute el siguiente comando para crear un enlace simbólico al archivo de bloque del servidor.

$ ln -s /etc/nginx/sites-available/domain1 /etc/nginx/sites-enabled

Prueba tu configuración

Correr sudo nginx -t para probar la configuración del bloque del servidor. Debería ver un mensaje que indica que todo está bien.

$ sudo nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Puedes correr sudo servicio nginx recarga para recargar los archivos de configuración.

Pruebe su nuevo sitio web

Abra un navegador web e ingrese la nueva dirección de su sitio web. Debería ver el contenido del archivo de índice creado para su nuevo sitio web, en lugar de la página web predeterminada de NGINX.

Alojamiento de un sitio web adicional mediante un bloque de servidor
Alojamiento de un sitio web adicional mediante un bloque de servidor

Comandos básicos para controlar NGINX

Aprendamos los comandos básicos de Nginx para administrar su servidor web.

los reiniciar El comando detendrá el servicio y luego lo iniciará nuevamente.

$ sudo systemctl restart nginx

los recargar El comando le dice a NGINX que vuelva a cargar sus archivos de configuración, pero sin detener el servicio.

$ sudo systemctl reload nginx

los detener El comando detendrá el servicio NGINX.

$ sudo systemctl stop nginx

A habilitar el servicio Nginx para iniciarse en el arranque, ejecute

$ sudo systemctl enable nginx

Nota: De forma predeterminada, el servicio Nginx está habilitado para iniciarse automáticamente cuando se inicia el servidor.

Archivos de registro y configuración básica de NGINX

/ etc / nginx – Contiene todos los archivos de configuración de NGINX

/ etc / nginx / sites-available Contiene archivos de bloque del servidor que almacenan detalles de configuración para servir uno o más sitios web

/ etc / nginx / sites-enabled – Contiene archivos de configuración para uno o más sitios web habilitados

/etc/nginx/nginx.conf – Archivo de configuración principal que también lee las directivas de configuración en otros archivos

/var/log/nginx/access.log – Ubicación predeterminada para almacenar información sobre todas las visitas a su sitio web

/var/log/nginx/error.log – Ubicación predeterminada para almacenar errores NGINX

Conclusión

Siguiendo esta guía, debería poder poner NGINX en funcionamiento con uno o más sitios web en su servidor Ubuntu 20.04. Pero si tiene algún problema, no dude en hacérnoslo saber en la sección de comentarios a continuación y haremos todo lo posible para ayudarlo.

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba
Cerrar