Guía Completa para Instalar y Configurar un Servidor Web con Nginx en Debian

Artículos Guías Manuales Sistemas Linux Windows Binario 0

Paso 1: Actualizar el sistema

Primero, asegúrate de que tu sistema esté actualizado. Abre una terminal y ejecuta los siguientes comandos:

sudo apt update
sudo apt upgrade -y

Paso 2: Instalar Nginx

Para instalar Nginx, usa el siguiente comando:

sudo apt install nginx -y

Paso 3: Verificar la instalación

Una vez instalado, puedes verificar que Nginx está funcionando abriendo un navegador web y accediendo a la dirección IP de tu servidor. Deberías ver la página de bienvenida de Nginx.

También puedes verificar el estado de Nginx con el siguiente comando:

sudo systemctl status nginx

Paso 4: Configurar el firewall

Si tienes un firewall activo, necesitas permitir el tráfico HTTP y HTTPS. Para hacerlo, ejecuta los siguientes comandos:

sudo ufw allow 'Nginx Full'

Paso 5: Configuración básica de Nginx

La configuración principal de Nginx se encuentra en el archivo /etc/nginx/nginx.conf. Sin embargo, la configuración específica de los sitios web se maneja en archivos separados ubicados en /etc/nginx/sites-available/ y /etc/nginx/sites-enabled/.

Crear un nuevo bloque de servidor

Vamos a crear una configuración básica para un nuevo sitio web. Crea un archivo nuevo en /etc/nginx/sites-available/:

sudo nano /etc/nginx/sites-available/tu_sitio

Agrega la siguiente configuración básica en el archivo:

server {
listen 80;
server_name tu_dominio o_direccion_ip;

root /var/www/tu_sitio;
index index.html index.htm;

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

Crear el directorio del sitio web

Crea el directorio donde se almacenarán los archivos de tu sitio web:

sudo mkdir -p /var/www/tu_sitio

Asignar permisos adecuados

Asigna los permisos necesarios para que Nginx pueda acceder a los archivos:

sudo chown -R www-data:www-data /var/www/tu_sitio
sudo chmod -R 755 /var/www/tu_sitio

Crear un archivo index.html

Crea un archivo de prueba index.html en el directorio de tu sitio web:

sudo nano /var/www/tu_sitio/index.html

Agrega algún contenido HTML simple:

<!DOCTYPE html>
<html>
<head>
<title>Bienvenido a tu sitio</title>
</head>
<body>
<h1>¡Hola, Mundo!</h1>
<p>Esta es una página de prueba para tu nuevo servidor web.</p>
</body>
</html>

Habilitar la configuración del sitio

Crea un enlace simbólico desde el archivo de configuración en sites-available a sites-enabled:

sudo ln -s /etc/nginx/sites-available/tu_sitio /etc/nginx/sites-enabled/

Probar la configuración de Nginx

Es una buena práctica probar la configuración de Nginx para asegurarse de que no hay errores de sintaxis:

sudo nginx -t

Reiniciar Nginx

Reinicia Nginx para aplicar los cambios:

sudo systemctl restart nginx

Paso 6: Configuración adicional (opcional)

Si tienes un dominio y quieres configurar HTTPS, puedes usar Certbot para obtener un certificado SSL gratuito de Let's Encrypt. Primero, instala Certbot:

sudo apt install certbot python3-certbot-nginx -y

Luego, ejecuta Certbot para configurar HTTPS:

sudo certbot --nginx

Sigue las instrucciones en pantalla para completar la configuración.

Paso 7: Verificar la configuración

Ahora, abre un navegador web y visita tu dominio o dirección IP. Deberías ver la página de prueba que creaste.

¡Y eso es todo! Ahora tienes un servidor web Nginx funcionando en Debian.