Cómo usar: Generador de configuraciones de Nginx
- Elige la opción: página web estática, SPA (todas las rutas se redirigen a
index.html), proxy inverso a una aplicación en un puerto o PHP-FPM. - Introduce tu dominio, la raíz del documento o la dirección de origen y elige cómo
wwwdebe gestionarse. - Marca las opciones adicionales: HTTPS con rutas de Let’s Encrypt, gzip, almacenamiento en caché de contenido estático, encabezados de seguridad, WebSockets y limitación de velocidad.
- Copia la configuración, pruébala con
nginx -ty vuelve a cargar Nginx.
Qué aporta cada opción
| Opción | Directivas |
|---|---|
| HTTPS | Servidor en el puerto 80 que redirige con 301, listen 443 ssl, las rutas de los certificados de Certbot y la ubicación del desafío ACME |
| SPA | try_files $uri $uri/ /index.html; para que las rutas del lado del cliente no devuelvan un 404 |
| Proxy inverso | proxy_pass más Host, X-Real-IP, X-Forwarded-For y X-Forwarded-Proto encabezados |
| WebSockets | proxy_http_version 1.1 con Upgrade / Connection encabezados |
| gzip | Compresión de texto, JSON, JS, CSS, SVG y fuentes |
| Almacenamiento en caché estático | Un año Cache-Control: immutable para los recursos con hash, caché corta para HTML |
| Encabezados de seguridad | X-Content-Type-Options, Referrer-Policy, X-Frame-Options, Permissions-Policy |
| Límite de solicitudes | limit_req_zone (en el http contexto) y limit_req con un pico |
Obtener el certificado
Primero crea la configuración con HTTPS desactivado, recarga Nginx y ejecuta sudo certbot certonly --webroot -w /var/www/letsencrypt -d example.com -d www.example.com — o simplemente sudo certbot --nginx. A continuación, activa HTTPS, vuelve a cargar y comprueba el resultado con el verificador de SSL, el verificador de redireccionamientos y el verificador de encabezados de seguridad.
Errores comunes
- Falta un punto y coma: cada directiva termina con
;.nginx -tmuestra la línea exacta. - Herencia de add_header: un
add_headerdentro de unlocationsustituye todos los encabezados del nivel del servidor. El generador repite los encabezados de seguridad cuando es necesario. - Barra al final en proxy_pass —
proxy_pass http://app/;elimina el prefijo de la ubicación,proxy_pass http://app;lo conserva. - Tipos MIME incorrectos — fuentes o
.webmanifestservidas comoapplication/octet-stream; búscalas con el buscador de tipos MIME.
¿Lo estás ejecutando en Docker? Combínalo con el generador de Docker Compose.
También se busca como: configuración del proxy inverso de nginx, configuración de nginx spa, bloque de servidor de nginx, redirección https en nginx, proxy websocket de nginx, configuración de nginx y php-fpm, redirección de «www» en nginx.
Herramientas que combinan con: Generador de configuraciones de Nginx
- Generador VirtualHost Apache — Obtén una configuración completa de host virtual de Apache para tu dominio: un sitio estático, WordPress, PHP-FPM o un proxy inverso hacia una app en Node o Python.
- Generador de Caddyfile — Caddy obtiene los certificados HTTPS automáticamente; tú solo describes tu sitio.
- Validador YAML — Pega un archivo de Docker Compose, un manifiesto de Kubernetes, un workflow de GitHub Actions o cualquier YAML para localizar errores, detectar trampas habituales y obtener una versión bien formateada.
- Generador de YAML de Kubernetes — Indica el nombre de tu app, la imagen y el puerto, y obtén YAML de Kubernetes listo para producción: un Deployment con probes, límites de recursos y un contexto de seguridad reforzado, además del Service, el Ingress con TLS, el ConfigMap, el Secret y el HorizontalPodAutoscaler que marques, todo en un solo archivo listo para kubectl apply.