Servidor · nginx

Recargar nginx sin tirar el sitio

El hábito que separa una edición tranquila de una caída en producción es uno solo: validar la configuración antes de aplicarla. nginx te deja probar la sintaxis sin tocar nada, y recargar de una forma que aplica los cambios sin cortar las conexiones que están en curso.

Gratis y open source macOS · Linux · Windows Nada sale de tu equipo

1. Instala nginx

Se instala una sola vez y queda para siempre. Es gratis y de código abierto:

# Ubuntu / Debian (tu servidor)
sudo apt install nginx

# macOS (pruebas locales)
brew install nginx

Si nunca has usado la terminal, empieza por la guía de la terminal.

2. Valida y luego recarga

Encadena las dos órdenes con &&: la recarga solo se ejecuta si la validación pasa primero:

sudo nginx -t && sudo systemctl reload nginx

nginx -t revisa toda tu configuración y avisa de errores señalando el archivo y la línea. Si todo está bien, reload le pide a nginx que adopte la nueva configuración levantando procesos nuevos y dejando que los viejos terminen de atender lo que ya estaban sirviendo. Nadie pierde su conexión a medio camino.

Por qué reload y no restart

Si nginx -t marca error, nada cambió todavía: el sitio sigue arriba con la configuración anterior. Corrige el archivo y vuelve a probar; nunca aplicaste una versión rota.

reload es preferible a restart en producción. restart detiene nginx por completo y lo vuelve a arrancar, dejando un breve hueco en el que el sitio no responde; reload nunca apaga el servicio. Reserva restart para cambios que reload no puede aplicar, como editar variables de entorno del servicio.

Tareas relacionadas

Preguntas frecuentes

¿Qué pasa si recargo con un error que nginx -t no detectó?

Es raro, porque nginx -t usa el mismo analizador que el arranque real. Si aun así una recarga fallara, nginx conserva en memoria la configuración anterior que estaba funcionando y no la reemplaza por una inválida, de modo que el sitio sigue respondiendo. Por eso el flujo validar-luego-recargar es tan seguro.

¿Necesito recargar cada vez que cambio un archivo HTML del sitio?

No. nginx lee los archivos de tu sitio en cada petición, así que el contenido nuevo se sirve solo. La recarga es únicamente para cambios en la configuración de nginx —los server blocks, gzip, rutas— no para el contenido que subes a la carpeta del sitio.