¿Cómo un sitio web / navegador obtiene un error de puerta de enlace incorrecta (código 504, 400)?

Es difícil escribir una respuesta específica sin conocer las tecnologías involucradas. Pero para una visión general …

504 Bad Gateway indica que el servidor web (a menudo Apache o Nginx) no puede reenviar una solicitud a la aplicación web, generalmente porque la aplicación web está apagada o la ruta a la aplicación web es incorrecta. Sin embargo, cuando el problema es intermitente, podría deberse a algunas cosas:

  • la aplicación web podría fallar y reiniciarse (obtendrías el error mientras la aplicación se está iniciando).
  • El número de conexiones que la aplicación web puede manejar puede ser inferior a lo que el servidor web le está enviando. Dependiendo de cómo estén configuradas las cosas, eso también podría conducir a un 504.
  • Si la aplicación web se actualiza mucho (y no se han configurado las actualizaciones de tiempo de inactividad cero), es posible que reciba este error cada vez que la aplicación se reinicie.
  • Algunos marcos web se pueden configurar para ir a dormir si no se recibe actividad en un determinado espacio de tiempo. Las primeras llamadas al sitio causarían este error, hasta que tenga tiempo de despertarse nuevamente.

400 Bad Request es diferente. La solicitud llega a la aplicación web, pero la aplicación web no sabe qué hacer con ella. Por lo general, eso se debe a que la solicitud está mal formada. La aplicación esperaba datos de solicitud en un cierto formato y no obtuvo lo que necesita para hacer su trabajo. Los registros de la aplicación web generalmente darán detalles sobre por qué falló.