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
- Apache VirtualHost Generator — Get a complete Apache virtual host config for your domain: a static site, WordPress, PHP-FPM or a reverse proxy to a Node or Python app.
- Caddyfile Generator — Caddy gets HTTPS certificates automatically — you only describe your site.
- YAML Validator — Paste a Docker Compose file, Kubernetes manifest, GitHub Actions workflow or any YAML to pinpoint errors, catch common pitfalls and get a cleanly formatted version.
- Kubernetes YAML Generator — Fill in your app’s name, image and port and get production-ready Kubernetes YAML: a Deployment with probes, resource limits and a hardened security context, plus the Service, Ingress with TLS, ConfigMap, Secret and HorizontalPodAutoscaler you tick — in one file ready for kubectl apply.