piapia123
es

Formateador y comprobador de configuración Nginx

Web

Todo se ejecuta en tu navegador: no se sube nada

Entrada
Arrastra un archivo aquí para cargarlo
Resultado

Vuelve a maquetar una configuración de nginx: indéntala por profundidad de llaves, o comprímela a una línea. Además del formato hace varias comprobaciones — si las llaves están emparejadas, qué directiva pierde su `;` final, si un `server_name` se repite en el mismo puerto y si `proxy_pass` lleva una ruta (esto cambia la URI que recibe el backend — una de las trampas más comunes de nginx). Los resultados indican la línea y el motivo; no deciden por ti. Un comentario `#` o un `{}` / `;` entre comillas nunca confunden al analizador. Todo se ejecuta en tu navegador, así que la configuración no sale de este dispositivo.

Funciones

  • Sangría por profundidad de llaves: 2 espacios, 4 espacios o tabulador
  • Comprimir a una sola línea para comparar o pegar
  • Comprueba el emparejamiento de llaves e indica la línea de cada una que falta o sobra
  • Comprueba si falta el `;` final (incluso entre líneas y al final del archivo)
  • Encuentra valores `server_name` duplicados en el mismo puerto
  • Señala más de un `default_server` en un puerto
  • Explica cómo una ruta en `proxy_pass` cambia la URI del backend
  • Las llaves y los puntos y coma dentro de comentarios y comillas nunca se malinterpretan
  • Copia línea a línea, o el resultado entero

Cómo se usa

  1. Pega o arrastra una configuración de nginx en el cuadro
  2. Elige la sangría, si expandir y si comprimir a una línea
  3. La configuración formateada y las comprobaciones se actualizan según escribes
  4. Usa el botón de copiar de una fila para llevarte solo esa parte

Preguntas frecuentes

¿Qué diferencia hay entre `proxy_pass http://backend` y `http://backend/`?
Decide qué URI recibe el backend. Sin ruta, nginx pasa la URI original de la petición sin cambios. Con ruta —aunque sea solo un `/`— la parte que coincide con el location se sustituye por esa ruta. Así, `location /api/ { proxy_pass http://backend/; }` convierte `/api/users` en `/users`, mientras que `proxy_pass http://backend;` deja pasar `/api/users`. La diferencia es casi invisible en los registros, y es la primera línea que hay que revisar cuando persigues un 404.
¿Por qué un punto y coma que falta señala una línea entera?
nginx permite que una directiva abarque varias líneas (la continuación suele ir sangrada), así que la herramienta no puede juzgar una sola línea. Su regla es: una línea cuya directiva aún no ha terminado con `;`, `{` o `}` va seguida de un token que empieza en la columna 1 — eso significa que la línea anterior olvidó su punto y coma. Las líneas de continuación sangradas nunca se señalan, porque sus tokens no empiezan en la columna 1.
¿Por qué se eliminan los comentarios en el modo de una línea?
Porque un comentario `#` no puede convivir en una línea compartida: todo lo que sigue a `#` hasta el final de la línea queda comentado, y en una salida de una sola línea se tragaría el resto de la configuración. Lo que se elimina es ese riesgo, no tus comentarios — usa el modo expandido cuando quieras conservarlos.
¿Se sube la configuración a algún sitio?
No. La tokenización, la sangría y las comprobaciones ocurren en el navegador; la página no hace ninguna petición, así que funciona sin conexión.

Herramientas relacionadas