Escenarios comunes en los que una mala configuración de Nginx conduce a ERR_TOO_MANY_REDIRECTS

gasto o desembolso Nginx Cuando actúa como servidor web, elERR_TOO_MANY_REDIRECTS es uno de los problemas de configuración más comunes. Este error se debe generalmente a la presencia de la configuración de NginxReglas de redireccionamiento incorrectastal vezConfiguración del proxyque pone la petición en un bucle infinito de redirección. Este artículo se centra en algunas de las causas comunes de ERR_TOO_MANY_REDIRECTS Problemas de configuración incorrecta de Nginx y sus soluciones.

Imagen [1] - Resolución del error ERR_TOO_MANY_REDIRECTS en la configuración de Nginx

1. Bucle de redirección de HTTP a HTTPS

Una de las causas más comunes deRedirección HTTP a HTTPS configurada incorrectamenteA menudo, los sitios quieren obligar a todo el tráfico a utilizar HTTPS. A menudo, los sitios quieren forzar todo el tráfico para utilizar HTTPS, y si Nginx está configurado incorrectamente, esto puede resultar en el De HTTP a HTTPSredirigeciclo.

Prácticas erróneas:

1.Configuración incorrecta de las reglas de redireccionamiento del servidorLa configuración del servidor puede haber introducido accidentalmente un bucle de redirección que hace que las peticiones sigan rebotando entre HTTP y HTTPS.

2.Problemas con la caché del navegadorLos navegadores pueden almacenar en caché información de redireccionamiento, especialmente si los redireccionamientos de HTTP a HTTPS no se gestionan correctamente, provocando bucles.

3.Problemas de configuración del balanceador de carga o proxySi se utiliza un equilibrador de carga o un servidor proxy, puede haber un error de configuración que haga que las solicitudes se redirijan sin cesar entre HTTP y HTTPS.

Imagen [2] - Resolución del error ERR_TOO_MANY_REDIRECTS en la configuración de Nginx

Solución:
asegure HTTP y HTTPS se gestionan por separado y no se redirigen entre sí. Por ejemplo, una configuración adecuada de redirección de HTTP a HTTPS debería tener este aspecto:

# Redirección HTTP -> HTTPS
servidor {
    listen 80; nombre_servidor ejemplo.com; nombre_servidor
    nombre_servidor ejemplo.com; return 301 ;
    return 301 https://$host$request_uri;
}

# Configuración HTTPS
servidor {
    listen 443 ssl; nombre_servidor ejemplo.com; }
    nombre_servidor ejemplo.com.

    ssl_certificate /ruta/a/certificado; ssl_certificate_key /ruta/a/clave privada; ssl_certificate_key /ruta/a/certificado
    ssl_certificate_key /ruta/para/clave_privada; ssl_certificate_key /ruta/para/clave_privada; ssl_certificate_key

    # Otras configuraciones HTTPS
}

2. X-Forwarded-Proto Desvío de la cabeza

Si Nginx está funcionando como un proxy inverso, el servidor back-end puede ser capaz de utilizar Nginx basado en el X-Forwarded-Proto La cabecera determina el tipo de protocolo de la solicitud. Si está mal configurada, puede hacer que el servidor back-end asuma incorrectamente que la solicitud es HTTP o HTTPS, provocando una redirección.

Prácticas erróneas:

  • En la configuración de Nginx, el campoX-Forwarded-Proto Las cabeceras se pasaban incorrectamente, haciendo que la aplicación back-end decidiera incorrectamente que necesitaba redirigir a HTTPS o HTTP.

Solución:
Asegúrese de que pasa el X-Forwarded-Proto La cabeza:

La cabecera X-Forwarded-Proto se ha transmitido correctamente

3. Conflicto de acuerdos de agencia

Si una petición es proxyada a un servidor backend a través de Nginx, las inconsistencias en el protocolo (HTTP o HTTPS) también pueden causar bucles de redirección. En particular, cuando una solicitud HTTP es proxyada a un servidor backend HTTPS, si el servidor backend asume incorrectamente que la solicitud es HTTP, puede enviar una redirección HTTPS, causando un bucle.

Prácticas erróneas:

  • Nginx recibe la petición HTTP y la desvía a un backend HTTPS, pero el backend redirige de nuevo a HTTP.

Solución:
Asegúrese de que Nginx utiliza el mismo protocolo que el servidor backend y que está configurado correctamente. proxy_set_header La cabeza.

Uso correcto de la cabecera proxy_set_header

4. Problemas de caché

Los navegadores o servidores proxy pueden almacenar en caché las respuestas de redirección, lo que puede llevar a infinitas al volver a visitar elredirige.

Ejemplo de escenario:

  • Como el navegador almacena en caché la respuesta de redirección errónea, provoca que las solicitudes posteriores vuelvan a entrar en el bucle de redirección.

Solución:
Borrar la caché del navegador

Imagen [5]-Resolución de errores ERR_TOO_MANY_REDIRECTS en la configuración de Nginx

ERR_TOO_MANY_REDIRECTS incorrectoSuele deberse a problemas con la redirección, los proxies y la gestión de protocolos en la configuración de Nginx. Este error puede evitarse comprobando y ajustando cuidadosamente la configuración de Nginx para garantizar que las reglas de redirección, la configuración del proxy y el paso de cabeceras son correctos.


Contacte con nosotros
¿No puede leer el tutorial? Póngase en contacto con nosotros para obtener una respuesta gratuita. Ayuda gratuita para sitios personales y de pequeñas empresas
Servicio de atención al cliente WeChat
Servicio de atención al cliente WeChat
Tel: 020-2206-9892
QQ咨询:1025174874
(iii) Correo electrónico: info@361sale.com
Horario de trabajo: de lunes a viernes, de 9:30 a 18:30, días festivos libres
© Declaración de reproducción
Autor : liuyan
EL FIN
Si le gusta, apóyela.
felicitaciones155 compartir (alegrías, beneficios, privilegios, etc.) con los demás
comentarios compra de sofás

Por favor, inicie sesión para enviar un comentario

    Sin comentarios