Soluciona el código de error 504 (Gateway Timeout)

Autor: | 2019-02-21T16:53:50+00:00 Fecha: 21/02/2019|Categorías: Soporte y Ayuda|Comentarios: Ningún comentario

Entre los muchos códigos de estado que puedes recibir cuando un servidor no es capaz de dar respuesta a la solicitud que le estás haciendo, está el error 504 Gateway Timeout. Seguramente te lo hayas encontrado alguna vez, aunque es cierto que es menos frecuente que otros errores de los que ya hemos hablado, como el error 502 Bad Gateway o el error 500.

En este post me voy a centrar en explicarte qué es y cómo solucionar un código de error 504.

 

Qué es el error 504 «Gateway Timeout»

Siempre que visitas una web (o la intentas visitar), tu navegador genera una solicitud y se la envía al servidor que aloja dicho sitio web. La solicitud se gestiona y el servidor devuelve un código de estado HTTP que solamente se te mostrará si algo ha salido mal. Si todo va bien, simplemente, recibirás el contenido que esperabas.

Más en concreto, el error 504 es un código de estado HTTP que indica que un servidor no ha recibido la respuesta que esperaba de otro servidor en un plazo de tiempo razonable al intentar acceder a un sitio web o completar otra solicitud a través del navegador.

En otras palabras, el código de error 504 suele indicar que un servidor con el que es necesario comunicarse para visualizar una web no está respondiendo lo suficientemente rápido. Quien envía el mensaje de error es el servidor que, en la cadena de comunicación, no recibe respuesta dentro del plazo estipulado y, por lo tanto, no es capaz de cumplir su función.

El servidor que provoca el código de estado 504 no tiene por qué ser directamente el que aloja la web, sino que puede tratarse de un servidor gateway o proxy que esté por el camino.

 

Qué es un servidor gateway o proxy

En su forma primordial, acceder a una web implica que tu navegador entabla una comunicación con el servidor en la que ésta se aloja. Hasta aquí bien, ¿no?

El caso es que en temas de web o redes las cosas nunca son tan sencillas y siempre hay excepciones. Una de ellas son los servidores proxy. Este tipo de servidores son máquinas que median total o parcialmente en las comunicaciones que realizas contra otros servidores.

¿Cuál es el propósito de este tipo de servidores? Pues pueden ser varios. Te nombro algunos para que te hagas una idea:

  • Un proxy puede actuar como “balanceador de carga”, recibiendo tu petición y dirigiéndola al servidor menos ocupado de un grupo. De esta forma, el servidor elegido responderá más rápido que uno con más carga de trabajo.
  • También pueden actuar como firewalls, restringiendo el tráfico de la red. ¿Alguna vez has tenido problemas en el trabajo para entrar a una página? En caso afirmativo, la culpa seguramente sea de un proxy que puso ahí tu empresa para que “trabajes más”.
  • Los proxys permiten también que puedas navegar a Internet a través de ellos, haciendo así que tu conexión sea un poco más privada. Estos son los llamados proxys anónimos (pero ojito y no te creas eso de que son anónimos).
  • Por último, algunas configuraciones dentro de un mismo servidor pueden necesitar una configuración de proxy consigo mismo. Es raro, pero en configuraciones de algunos lenguajes de programación, como PHP, puede ser necesario.

Como ves hay muchos motivos por los que un proxy puede mediar en una conexión. En esencia, puedes pensar que el servidor que aloja la web que quieres ver es simplemente el último eslabón de una larga cadena encargada de procesar la solicitud HTTP que tú has enviado.

Por lo tanto, el proxy es un nodo que forma parte de una red mucho más grande y que conecta y enruta comunicaciones entre varios actores: cliente, servidor y otros nodos necesarios. Cuando alguno de estos actores no responde en un tiempo adecuado, el servidor proxy da la conexión por fallida y te devuelve el error 504 para hacerte saber que “la culpa es de otro servidor que no ha respondido” sea por lentitud, problemas de configuración o alguna de las otras causas que te cuento en este artículo.

 

Qué mensajes puedes encontrarte al recibir un código de estado 504

Va un poco en función del sitio web y del tipo de proxy que lo haya lanzado, ya que los administradores pueden personalizar el aspecto de la página de error 504. Por eso, algunos sitios web cuentan con mensajes personalizados para los códigos de estado HTTP.

error 504 en google

Los errores 504 aparecen en lugar de la web a la que quieres acceder, pero la página de error también puede contener la cabecera o el pie de página del sitio y un mensaje personalizado que te indique lo que está pasando. Por otro lado, un error 504 también puede mostrarse como un simple pantallazo blanco con un «504» bien grande en la parte superior del navegador.

Algunos de los mensajes más comunes para el código HTTP 504 son:

Error HTTP 504 – Gateway Timeout

Gateway Timeout (504)

504 Error

504 Gateway Timeout

HTTP 504

 

Qué causa el código error 504 «Gateway Timeout»

Como te decía antes, el error 504 es un error de conexión entre servidores. Por lo tanto, te puedes olvidar de que sea un problema con tu conexión o con tu dispositivo. La mayoría de las veces, el error 504 viene provocado por que otro servidor se lo está tomando con demasiada calma, está caído o no está funcionando correctamente.

Como suele suceder con la mayoría de códigos de respuesta HTTP que indican un error como este, puede ser complicado establecer la causa exacta del 504 Gateway Timeout. Al fin y al cabo, la comunicación entre cliente, servidor web e incluso servicios de terceros es un tema complejo.

En términos generales, lo más común es que el servidor con el que intentas comunicarte está recibiendo un gran número de peticiones y está sobrepasado o caído en estos momentos. No puede funcionar con la rapidez adecuada y el navegador entrega al usuario el código de estado 504 Gateway Timeout. No obstante, también es posible que existan problemas de conectividad de red o que incluso sea culpa de un plugin de terceros.

¡Vaya lío, eh! No te preocupes, ahora vamos a ver soluciones a todas estas posibles causas. Como te decía más arriba, en la mayoría de las situaciones es raro que el error 504 venga del lado del cliente, pero hay algunas cosas que puedes probar:

 

Cómo solucionar el código de estado HTTP 504 si eres una visita

Como te decía, es probable que el error 504 no tenga nada que ver contigo, de modo que lo normal es que no soluciones nada.

  1. Lo primero es volver a cargar la página: pulsa F5 o el botón de Actualizar de tu navegador. Si el error 504 era un fallo temporal, simplemente, es posible que actualizar la página te permita entrar.

Cuidado: No vuelvas a cargar la página si el error aparece justo después de realizar un pago. Es posible que dupliques la transacción.

  1. Para asegurarte de que no hay ningún problema con tu red local, comprueba si el sitio web está dándole problemas a todo el mundo o solo a ti. Puedes hacerlo con distintas herramientas, pero las más conocidas son Pingdom ToolsDown For Everyone Or Just MeIs It Down Right Now. Introduce el dominio al que estás intentando acceder y comprueba el resultado. Si la web está caída, no habrá mucho más que puedas hacer, excepto esperar.
  2. Espera un rato y vuelve a probar. Si realmente el error 504 está siendo causado por un fallo de la red del sitio web o de un servidor con el que se comunica, lo más seguro es que todas las visitas estén experimentando el mismo error que tú. Es probable que el responsable de la web ya esté al tanto y que esté trabajando para ponerle solución.
  3. Si la web solamente te está dando problemas a ti, es que el fallo está de tu lado (esto es muy, muy poco común). Para comprobar si el error 504 tiene algo que ver con tu navegador, prueba a borrar la caché, acceder en modo incógnito o, directamente, a acceder desde otro navegador. Si tampoco puedes, quizá tu ordenador o tu equipo de red estén teniendo un problema temporal de algún tipo: prueba a acceder desde otro ordenador, conexión de red o (lo más fácil) desde tu teléfono móvil.

Para usuarios con conocimientos técnicos: Si nada funciona y estás a punto de tirarte por la ventana, haz un último intento. Comprueba si se trata de un fallo del servidor DNS: puedes usar los DNS públicos de Google.

  1. Si el fallo no está de tu lado (que es lo normal) y el acceso te corre mucha prisa, puedes contactar con el webmaster para avisarlo del error 504 Gateway Timeout. La mayoría de sitios web cuentan con perfil en una o más redes sociales desde las que interactúan con sus seguidores. Las webs más importantes suelen tener también algún correo o número de teléfono a través de los cuales puedes contactar con ellos.

 

Cómo solucionar el código de estado HTTP 504 si eres el administrador de la web

Antes de nada, como siempre, recuerda que es mejor pasarte de precavido que lamentarte más adelante. Es vital que realices una copia de seguridad completa de tu instalación, base de datos, etc., antes de hacer cambio alguno en el sistema.

  1. En primer lugar, comprueba que el servidor en el que estás alojado está funcionando con normalidad. A veces, si el tráfico aumenta mucho es posible que tengas como resultado un error 504 (aunque lo más habitual sería un error 503, la verdad) si el servicio que gestiona la respuesta final está sobrecargado y tarda en responder. Es mejor descartar este posible motivo cuanto antes: puedes usar Pingdom Tools para comprobar cuál es la respuesta de tu hosting.
  2. El código de estado 504 también puede haber sido provocado por cambios o actualizaciones recientes en tu web. Lo más fácil es comprobar el informe de errores. Los usuarios de WordPress pueden añadir estas líneas al fichero wp-config.php para así poder ver todos los resultados en debug.log (en wp-contents):

  1. El error 504 Gateway Timeout en WordPress también puede ser causado por errores en la base de datos. Instálate WP-DBManager y utiliza las funciones «Repair DB» y «Optimize DB», a ver si te da resultado. También tienes que comprobar que el archivo .htaccess no contenga errores, sobre todo si has reinstalado WordPress recientemente.
  2. Si estás recibiendo un código de estado 504 en WordPress, tampoco está de más comprobar los plugins (sobre todo los que hacen funciones de caché). Desactívalos todos de forma temporal y comprueba si todavía ves el error. Si no es así, sabrás que un plugin era el culpable. Vuelve a activarlos todos y empieza a desactivarlos uno a uno hasta que identifiques cuál es el que hace saltar el error.
  3. ¿Estás utilizando un servicio de CDN? En el caso de CloudFlare, el error 504 aparecerá personalizado: «504 Gateway Timeout / cloudflare-nginx». Desactiva la CDN, espera unas horas a que se propaguen las DNS y el error 504 debería haber desaparecido. También puedes contactar con el soporte de CloudFlare para que revisen qué ha pasado. Tampoco estaría de más que pruebes a usar el archivo hosts para acceder a tu web y descartar así problemas del lado de CloudFlare.
  4. Por último, si nada da resultado, lo mejor es que te pongas en contacto con tu proveedor de hosting. Es posible que el error 504 se deba a un problema que ellos puedan resolver.

 

Conclusión

Lo bueno (y lo malo) del error 504 es que suele estar originado en un servidor intermediario, por lo que como usuario tú no podrás hacer demasiado por solucionarlo. En general, podrás esperar un poco y el asunto se resolverá sin tu intervención. No obstante, si tienes prisa, si estás utilizando una aplicación online y no puedes seguir trabajando mientras tanto o si la web afectada es la tuya propia y estás perdiendo tráfico, quizá quieras aplicar las posibles soluciones que te he sugerido en este post.

Si conoces algún otro truco o solución para solucionar el código HTTP 504 Gateway Timeout, deja un comentario y lo añadiremos al artículo.

[Total: 4 Promedio: 4]
Técnico de marketing online en el sector del hosting desde 2012. Le gustan Gaiman, Pratchett y Le Guin, hacer la guerra psicológica a los sysadmins e intentar que Bowie no se coma el sofá.

Utilizamos cookies propias y de terceros para obtener información estadística, mostrar publicidad personalizada a través del análisis de tu navegación, así como para interactuar en redes sociales. Si continúas navegando, consideramos que aceptas nuestra Política de cookies. ACEPTAR

Aviso de cookies