LINUX

Cómo instalar NGINX en Ubuntu 20.04 y sitio 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 (esencialmente, un 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 un servidor web independiente en Ubuntu 20.04.

Instalar NGINX en Ubuntu 20.04

primero tu corres sudo apt-obtener actualización para recuperar información sobre paquetes nuevos y actualizados antes de continuar con la instalación de NGINX.

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

$ sudo apt-get install nginx

Consultar 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
verificar el estado de nginx en ubuntu 20.04
Comprobar el estado de Nginx en Ubuntu 20.04

El resultado del comando anterior confirma que NGINX está activo y en funcionamiento. 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
verifique la versión de nginx ubuntu
Comprobar la versión de Nginx en Ubuntu

La salida muestra Nginx versión 1.18.0 ejecutándose en Ubuntu 20.04 al momento de escribir este tutorial.

Probar el servidor web NGINX

Una vez que haya confirmado que el servicio NGINX está funcionando, ahora puede probar su servidor web abriendo su navegador web favorito e ingresando la dirección IP de su servidor (http://your_server_ip) donde está instalado NGINX.

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

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

Confirme también que el puerto apropiado esté abierto en el cortafuegos. Por ejemplo, si ha habilitado Cortafuegos sin complicaciones (ufw) en su servidor Ubuntu, debe intentar actualizar sus reglas de firewall para permitir que NGINX se comunique en el puerto 80 y/o 443 de la siguiente manera.

Para habilitar NGINX en el puerto 80:

$ sudo ufw allow 'Nginx HTTP'

Para habilitar 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, debe configurar bloques de servidor. Los bloques de servidor también se denominan hosts virtuales (principalmente en Apache).

NGINX viene preconfigurado con un solo bloque de servidor y aquí están los detalles de configuración para sitio web predeterminado (/etc/nginx/sites-disponible) 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 en una página. 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), 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 bloqueo de servidor separado y dejar el predeterminado como está.

/etc/nginx/sitios-disponibles/predeterminado

# 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. Usaremos esta información pronto.

Crear raíz para el sitio web

Luego debe crear una carpeta raíz en /var/www para almacenar contenido para su sitio adicional. Por ejemplo, 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 sus 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

Crear 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 adicional.

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

Estoy usando nano en este ejemplo, pero puedes usar tu 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 sus cambios y cierre el editor de texto.

Crear un bloque de servidor

El siguiente paso es crear un archivo de bloqueo del servidor para guardar 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 de host virtual de muestra que guardó anteriormente y péguela en el nuevo archivo. Comenzando desde la línea «servidor», asegúrese de eliminarlos todos # Símbolos para decodificar directivas. Además, no olvide 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 sus cambios y cierre este archivo.

Habilitar el bloqueo del servidor

Para informar a NGINX 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 huir Sudo servicio nginx recargar para recargar los archivos de configuración.

Prueba tu nuevo sitio web

Abra un navegador web e ingrese la nueva dirección del 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.

Hospedaje de sitio web adicional usando el bloqueo del servidor
Hospedaje de sitio web adicional usando el bloqueo del 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á de nuevo.

$ 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 Deténgase El comando detendrá el servicio NGINX.

$ sudo systemctl stop nginx

a Habilitar Servicio Nginx para comenzar al inicio, ejecutar

$ sudo systemctl enable nginx

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

Configuración básica de NGINX y archivos de registro

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

/etc/nginx/sitios-disponibles Contiene archivos de bloqueo 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 — El 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

Al seguir esta guía, debería poder poner en funcionamiento NGINX 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