Generador de Configuración Nginx

Genera configuraciones Nginx listas para producción con SSL, proxy inverso, PHP-FPM, gzip, caché, cabeceras de seguridad, limitación de tasa y redirecciones. Incluye 7 plantillas.

Actualizado

Share:
Home/Website Tools/Nginx Config Generator

Nginx Config Generator

Generate production-ready Nginx configuration files with SSL, reverse proxy, PHP-FPM, caching, security headers, and more.

Preset Templates

Server Block

HTTPS / SSL

Proxy Pass

PHP-FPM

Static Files

GZIP

Security

Redirects

Logging

Generated Config

36 lines

Active Features

Gzip

Preguntas Frecuentes

¿Qué es el Generador de Configuración de Nginx?

El Generador de Configuración de Nginx es una herramienta online gratuita que genera configuraciones de Nginx listas para producción con SSL, proxy inverso, php-fpm, gzip, caché, cabeceras de seguridad, limitación de tasa y redirecciones. Incluye 7 ajustes preestablecidos. Funciona por completo en tu navegador, sin necesidad de instalación ni registro.

¿Qué ajustes preestablecidos?

Siete: Sitio Estático, WordPress, Node.js, Laravel, Next.js, Django y SPA (React/Vue). Cada uno rellena previamente los ajustes adecuados.

¿Configuración completa y funcional?

Genera un bloque server para nginx.conf o sites-available. Las directivas de la zona de limitación de tasa se muestran como comentarios para el bloque http.

¿Se envía la configuración a un servidor?

No. Todo se ejecuta del lado del cliente, en tu navegador.

¿Es gratuito el Generador de Configuración de Nginx?

Sí, el Generador de Configuración de Nginx es 100 % gratuito, sin registro, sin cargos ocultos y sin límites de uso. Todo el procesamiento ocurre localmente en tu navegador, garantizando una privacidad total.

¿Están seguros mis datos con esta herramienta?

Por supuesto. El Generador de Configuración de Nginx procesa todo del lado del cliente, en tu navegador. No se sube ni se almacena ningún dato en ningún servidor. Tu contenido permanece privado en tu dispositivo en todo momento.

¿Funciona el Generador de Configuración de Nginx en dispositivos móviles?

Sí, el Generador de Configuración de Nginx es totalmente adaptable y funciona en smartphones y tablets. Puedes usarlo en cualquier dispositivo con un navegador web moderno, sin necesidad de descargar ninguna aplicación.

¿Necesito crear una cuenta para usar esta herramienta?

No se necesita ninguna cuenta ni registro. Simplemente abre el Generador de Configuración de Nginx en tu navegador y empieza a usarlo de inmediato. No hay muros de registro ni restricciones de uso.

¿Cómo uso el Generador de Configuración de Nginx?

Solo tienes que introducir tus datos en el campo correspondiente, ajustar las opciones a tu gusto y la herramienta los procesará al instante. Después puedes copiar el resultado al portapapeles o descargarlo.

¿Qué navegadores son compatibles?

El Generador de Configuración de Nginx funciona en todos los navegadores modernos, como Chrome, Firefox, Safari, Edge y Opera. Para una mejor experiencia, usa la última versión de tu navegador preferido.

¿Por qué la directiva limit_req_zone debe ir en el bloque http y no en el bloque server?

En Nginx, la limitación de tasa necesita dos piezas que viven en contextos distintos. La directiva limit_req_zone define una zona de memoria compartida (por ejemplo, zone=ratelimit:10m rate=...) y solo es válida en el bloque http de nivel superior, porque esa zona se comparte entre todos los bloques server. La directiva limit_req correspondiente, que realmente aplica el límite con un valor de burst, pertenece dentro del bloque server o location. Si pegas limit_req_zone dentro de un bloque server, Nginx no arranca y lanza un error de "directive is not allowed here". Por eso este generador coloca la línea limit_req directamente en tu bloque server, pero muestra la línea limit_req_zone como un comentario etiquetado, recordándote que debes moverla al contexto http. Activa la limitación de tasa en la herramienta y copia ambas piezas en el lugar correcto.

¿Cuál es la diferencia entre una configuración de proxy inverso y una de PHP-FPM en Nginx?

Una configuración de proxy inverso usa proxy_pass para reenviar peticiones a un servidor de aplicación separado que corre en su propio puerto, como un proceso Node.js, Next.js o Django/Gunicorn en 127.0.0.1:3000 o :8000. Nginx añade cabeceras como X-Real-IP, X-Forwarded-For, X-Forwarded-Proto y Host, además de cabeceras Upgrade y Connection cuando los WebSockets están activados. Una configuración de PHP-FPM, en cambio, usa un bloque location ~ \.php$ con fastcgi_pass apuntando a un socket Unix e incluye fastcgi_params, de modo que Nginx entrega los archivos PHP directamente al proceso FPM en lugar de hacer proxy HTTP. WordPress y Laravel usan la vía FastCGI; Node, Next.js y Django usan la vía de proxy inverso. Elige la plantilla correspondiente en el generador y este conecta las directivas correctas para tu stack.

¿Cómo redirijo de HTTP a HTTPS y fuerzo www o sin-www en una sola configuración de Nginx?

Ambas redirecciones se gestionan de forma limpia en un único conjunto de bloques server. Para HTTP a HTTPS, un servidor separado que escucha en el puerto 80 captura las peticiones simples y emite un 301 hacia la versión https://, mientras tu servidor principal escucha en el 443 con SSL. Para la canonicalización www frente a sin-www, rediriges un host hacia el otro, también con un 301, de modo que los buscadores y navegadores se decanten por un único dominio canónico en lugar de tratar www y la raíz como sitios duplicados. Hacerlo a mano arriesga bucles de redirección si las reglas se solapan o una directiva termina en el servidor equivocado. Activa HTTP a HTTPS y tu opción preferida de www o sin-www en el generador, y este escribe los bloques de redirección en el orden correcto para que los copies.

¿Por qué debería usar listen 443 ssl http2 y TLS 1.2/1.3 en lugar de configuraciones más antiguas?

Añadir http2 a la línea listen 443 ssl activa HTTP/2, que multiplexa muchas peticiones sobre una sola conexión y acelera notablemente las páginas con muchos recursos, sin necesidad de cambios en la aplicación. Restringir ssl_protocols a TLSv1.2 y TLSv1.3 elimina los protocolos antiguos SSLv3, TLS 1.0 y TLS 1.1, que están obsoletos y son vulnerables a ataques como POODLE y BEAST, de modo que los clientes modernos solo negocian cifrados seguros. El generador también añade un conjunto de cifrados reforzado, una caché de sesión, HSTS opcional con preload y OCSP stapling, para que las comprobaciones de revocación de certificados no ralenticen el handshake. Son ajustes que la gente suele olvidar al escribir configuraciones a mano. Activa la sección SSL en la herramienta y estos valores se rellenan para que los revises antes de desplegar.

¿Cómo hago que el enrutamiento del lado del cliente funcione en Nginx para una SPA de React o Vue?

Las aplicaciones de una sola página gestionan el enrutamiento en JavaScript, así que cuando un usuario recarga un enlace profundo como /dashboard, el navegador le pide a Nginx un archivo real en esa ruta. Sin un manejo especial, Nginx devuelve 404 porque no existe tal archivo en disco. La solución es una directiva try_files que recurra a tu index.html: try_files $uri $uri/ /index.html;. Esto sirve los recursos estáticos reales cuando existen, pero redirige cualquier ruta desconocida de vuelta al shell de la app, dejando que el enrutador del cliente tome el control. Olvidar esta línea es la razón más común por la que las recargas de una SPA fallan en producción. La plantilla SPA (React/Vue) de este generador configura ese respaldo de historial automáticamente, junto con gzip y caché de recursos, así que copia el resultado y tus rutas sobrevivirán a una recarga forzada.

Acerca del Generador de Configuración Nginx

El Generador de Configuración Nginx crea un bloque de servidor limpio y listo para producción sin que tengas que memorizar cada directiva. Rellenas tu dominio, lo apuntas a un directorio raíz o a una aplicación upstream, activas las funciones que necesitas y la herramienta escribe una configuración correctamente indentada en tiempo real. Está pensada para desarrolladores, administradores de sistemas y cualquiera que despliegue un sitio o una app y prefiera partir de un .conf sensato en lugar de copiar y pegar fragmentos de una docena de blogs.

Todo se genera en tu navegador. Los nombres de dominio, rutas de certificados, rutas de sockets y direcciones upstream que escribes nunca se envían a ningún sitio: no hay llamadas a una API, ni cuenta, ni registros por nuestra parte. Puedes copiar el resultado al portapapeles o descargarlo como un archivo .conf con el nombre de tu servidor, y luego colocarlo en sites-available o en nginx.conf.

Empieza desde una plantilla y personalízala

Siete plantillas cubren los despliegues más comunes y rellenan de antemano las opciones relevantes, para que no vayas activando interruptores a ciegas:

  • Sitio estático — HTML/CSS/JS puro con gzip y caché de recursos
  • WordPress — PHP-FPM, un límite de subida de 64m y framing SAMEORIGIN
  • Node.js y Next.js — proxy inverso a 127.0.0.1:3000 con cabeceras de actualización WebSocket
  • Laravel — PHP-FPM con raíz en /public y try_files hacia index.php
  • Django — proxy inverso a un upstream de Gunicorn en el puerto 8000
  • SPA (React/Vue) — respaldo de historial con try_files hacia index.html para que el enrutamiento del lado del cliente funcione

Después de elegir una plantilla puedes seguir cambiando cualquier valor; el resultado se actualiza mientras escribes.

Qué puede generar

El generador cubre las directivas que importan en un despliegue real:

  • HTTPS / SSLlisten 443 ssl http2, rutas de certificado y clave, TLS 1.2/1.3, un conjunto de cifrados reforzado, caché de sesión, HSTS opcional con preload y OCSP stapling.
  • Proxy inversoproxy_pass hacia tu upstream con cabeceras X-Real-IP, X-Forwarded-For, X-Forwarded-Proto y Host, además de cabeceras Upgrade/Connection cuando el soporte WebSocket está activado.
  • PHP-FPM — un bloque location ~ \.php$ conectado a tu socket FastCGI con los fastcgi_params estándar.
  • Rendimiento — gzip (nivel 6, gzip_min_length 256) y cabeceras expires más Cache-Control por tipo de archivo para imágenes, CSS y JS.
  • SeguridadX-Frame-Options, X-Content-Type-Options: nosniff, Referrer-Policy, una Content-Security-Policy opcional, límites de tamaño del cuerpo de la petición y un bloque que deniega el acceso a dotfiles ocultos.
  • Limitación de tasa — una directiva limit_req en el bloque server, con la limit_req_zone correspondiente mostrada como comentario, porque esa línea pertenece al contexto http.
  • Redirecciones — de HTTP a HTTPS automáticamente, canonicalización www/sin-www, y tus propias reglas de rewrite con 301 o 302.

Por qué una configuración generada es mejor que editarla a mano

La configuración de Nginx no perdona errores: un punto y coma que falta, una directiva en el contexto equivocado o una línea try_files olvidada pueden dejar un sitio fuera de línea o romper silenciosamente el enrutamiento de una SPA. Generar el bloque mantiene la estructura válida y la indentación consistente, y te empuja hacia los valores por defecto que la gente suele pasar por alto: HTTP/2, solo TLS moderno, cabeceras de seguridad marcadas como always, y desactivar los logs de acceso para los recursos estáticos y así reducir el ruido en los registros.

Un detalle que vale la pena conocer: la directiva limit_req_zone debe vivir en el bloque http, no dentro de server, y por eso la herramienta la muestra como un comentario etiquetado en lugar de dejarla enterrada en un lugar donde no cargaría. Antes de poner algo en producción, valida siempre con nginx -t y recarga con nginx -s reload (o systemctl reload nginx). Trata el resultado como un punto de partida sólido y con criterio propio: revisa las rutas, los certificados y las direcciones upstream frente a tu propio servidor antes de desplegar.