9 Tácticas Para Resolver el Error 504 Gateway Timeout

by Luke Odom
9 Tácticas Para Resolver el Error 504 Gateway Timeout thumbnail

Para los propietarios de sitios web de WordPress, administradores profesionales de sitios web y desarrolladores de sitios web, hay muchos errores comunes de WordPress para tener en cuenta.

Pensar en códigos de error puede parecer abrumador e incluso un poco pesimista. Sin embargo, descubrimos que catalogar proactivamente por qué ocurre cada uno y cómo solucionarlos te ahorra un montón de tiempo, dinero y células cerebrales al desentrañar la pantalla en blanco o congelada frente a ti.

Después de todo, ¿cuánto más fácil sería la vida si vinieras con un mensaje como Error ©0m1ⓓ@: Hangry para descifrar por qué estás tan irritable en Slack a las 3 p. m. todos los días? (¡Sí, somos culpables!)

Todos los que trabajan con un sitio WordPress, o han usado Internet en general, probablemente hayan encontrado el error 504 Gateway Timeout en algún momento.

Así que hemos reunido esta guía para explicar lo que estás viendo, por qué ocurre, muchas soluciones para arreglarlo y por qué incluso importa que este error ocurra en primer lugar.

Desde verificaciones básicas, hasta técnicas avanzadas de solución de problemas, acompáñanos mientras recorremos todo lo que el astuto propietario o administrador de sitios web debe saber sobre cómo arreglar el error 504 Gateway Timeout.

Cómo Identificar un Error 504 Gateway Timeout

En el navegador más popular del mundo, Google Chrome, a menudo verás el familiar mensaje “Este sitio no puede ser alcanzado” en una pantalla casi en blanco, con el código de error “ERROR HTTP 504” debajo de él.

Sin embargo, hay varias formas diferentes en las que este error puede ser referenciado en Chrome, así como en diferentes navegadores, dispositivos, sistemas operativos, tipos de servidor y programas.

"Tiempo de espera de puerta de enlace 504". cuadro de diálogo de mensaje de error con el título "El servidor no respondió a tiempo".

Entonces, si ves alguno de estos mensajes, es probable que estés tratando con el mismo error 504 Gateway Timeout del que estamos hablando hoy:

  • “Gateway Timeout Error” 
  • “504 Gateway Time-out. The server didn’t respond in time.”
  • “Gateway Timeout (504)”
  • “Error 504”
  • “504 Error”
  • “HTTP Error 504”
  • “HTTP 504”
  • “HTTP Error 504. Gateway Timeout.”
  • “504 Gateway Timeout NGINX”
  • “NGINX 504 Gateway Timeout”

Y a veces, el error puede ser un poco menos descriptivo, omitiendo el código numérico en favor de una referencia al tiempo, como:

  • “This page isn’t working. Domain took too long to respond.”
  • “The page request was canceled because it took too long to complete”
  • “There was an issue serving your request, please try again in a few minutes”
  • “There was a gateway timeout. You should visit your error log for more information”

Los propietarios de sitios web incluso pueden personalizar la página que se muestra si un usuario encuentra un error 504 mientras usa su sitio web, lo que significa que podrías obtener una página con una marca atractiva que utilice alguna combinación de los códigos y contenido mencionados anteriormente.

¡Otras veces, podrías encontrarte simplemente mirando una pantalla en blanco! Dado que el error 504 es bastante común, no es una mala idea asumir que una página en blanco se debe a una situación de tiempo de espera del servidor y aplicar los pasos que proporcionaremos más adelante en esta guía para corregirlo.

Lo Que Significa el Error 504 Gateway Timeout Error

Técnicamente, el error 504 de tiempo de espera de la puerta de enlace es un error del lado del servidor de un servidor que actúa como puerta de enlace o proxy. Significa que el servidor agotó el tiempo de espera mientras esperaba una respuesta del próximo servidor con el que necesitaba comunicarse, y, por lo tanto, no completó la acción que se le pidió realizar.

¿Qué significa eso en términos menos técnicos? (En español, por favor.)

Así es cómo sucedió. Vamos a adentrarnos un poco más en todo el proceso.

Cuando visitas un sitio web, el proceso típico es que el servidor que está utilizando tu navegador envía una solicitud al servidor que aloja el sitio web que pretendes visitar. Esta solicitud le indica al servidor receptor (a menudo llamado “servidor ascendente”) que comience a cargar el sitio web que deseas ver.

Tu servidor es la puerta de enlace en este caso. Tu servidor espera a que el servidor ascendente responda y le envíe datos. Si el servidor ascendente no lo hace a tiempo, en lugar de ver el sitio web de destino, se te muestra un mensaje de error de tiempo de espera de la puerta de enlace 504.

Diagrama de "Puerta de enlace" y "Servidor ascendente" con un símbolo de reloj entre los dos para indicar el tiempo necesario.

A veces, el error puede resolverse por sí mismo, pero otras veces puede ser necesario entrar en diferentes sistemas para implementar una solución.

Ahora que sabes lo que estás viendo, averigüemos por qué lo estás viendo.

¿Qué Causa el Error 504 Gateway Timeout?

La razón por la que el error 504 es tan común es que pueden ocurrir problemas de sincronización del servidor por una variedad de razones.

Aquí hay muchos de los problemas subyacentes más populares:

Problemas del servidor: Los servidores se caen y se ralentizan todo el tiempo por diversas razones: aumento del tráfico, mantenimiento, fallo de hardware, etc. Si alguno de los servidores que necesitas para cargar un sitio web está caído, es probable que veas un error debido a problemas de sincronización.

Limitaciones de recursos: Si tu sitio web está recibiendo más tráfico, incluso si ese tráfico proviene de fuentes legítimas, puede ser más de lo que tu configuración actual está preparada para manejar.

Otras interrupciones más generales: Hay mucho más que la disponibilidad del servidor que puede salir mal al cargar sitios web. Los enrutadores pueden fallar, los dispositivos pueden tener errores, y así sucesivamente. Cualquiera de estos problemas puede interferir con la conexión de servidor a servidor y provocar el error 504.

Problemas del servidor proxy: Los servidores proxy pueden agregar otra capa de seguridad, pero a veces pueden interrumpir la comunicación entre la puerta de enlace y los servidores ascendentes.

Confusión del firewall: Los firewalls, especialmente aquellos con medidas de seguridad adicionales o configuraciones personalizadas, pueden bloquear ciertas conexiones por error, pensando que se trata de un ataque. Esto puede suceder más si estás utilizando un firewall para restringir ciertos proveedores de servicios de Internet (ISP) o redes de entrega de contenido (CDN).

Problemas de DNS: A veces, los servidores de sistema de nombres de dominio (DNS) no pueden vincular el nombre de dominio correcto con la dirección IP correcta. Esto puede ser causado por cambios recientes de IP, información DNS antigua almacenada en caché o una configuración de DNS incorrecta.

[glossary_term_es title=”DNS” text=”El sistema de nombres de dominio, mejor conocido por sus siglas en inglés como DNS, es un protocolo que mantiene records de qué dominio corresponde a cuál dirección IP. Este sistema te permite navegar la web introduciendo direcciones web normales en tu navegador en vez de tener que recordar la dirección IP de cada sitio web.”]

Errores en el código del sitio web: Un error dentro del código de tu sitio web puede hacer que tu servidor o los servidores ascendentes no puedan comunicarse con precisión entre sí, lo que provoca un tiempo de espera cuando no pueden resolver la falta de comunicación.

Limitaciones de los trabajadores PHP: En WordPress, los trabajadores PHP son procesos que ayudan a servir el contenido de tu sitio web a los visitantes. Si no tienes suficientes de estos en su lugar para mantenerse al día con el tráfico, es posible que un servidor tenga que ‘ponerse en línea’ antes de que se pueda responder a su solicitud, lo que probablemente causará un tiempo de espera.

[glossary_term_es title=”PHP” text=”El PHP (Preprocesador de hipertexto) es un lenguaje de scripts de código abierto. Es ampliamente utilizado en el desarrollo web y se puede usar dentro del HTML. Varios sistemas de gestión de contenido (CMS) populares, como WordPress, están construidos con el PHP.”]

¿Por Qué Corregir el 504 Gateway Timeout Error?

Bien, ahora vamos a considerar una razón muy importante antes de adentrarnos en el trabajo de corregir los errores de tiempo de espera: ¿por qué molestarse en corregir el error 504 en absoluto?

Realmente hay dos razones principales para preocuparse aquí: la experiencia del usuario y el SEO.

Cualquiera de los errores HTTP 500 impide que un sitio web se cargue. Esa es probablemente la peor experiencia que puedes crear para un visitante de tu sitio web, especialmente para los visitantes por primera vez que fueron referidos a tu sitio web o llegaron allí desde un anuncio, ya que puede dejar un mal sabor de boca que los impide regresar. Eso es un problema no solo para tu ego y marca, sino también para tus ventas y retención.

Luego, está la optimización para motores de búsqueda (SEO) a considerar.

[glossary_term_es title=”SEO” text=”La optimización de motores de búsqueda, o SEO por sus siglas en inglés, es la práctica de mejorar la clasificación de un sitio en los resultados de búsqueda. Los resultados de búsqueda se determinan tomando una serie de factores en consideración. Estos factores incluyen la relevancia y la calidad de un sitio web. Optimizar tu sitio para estos factores puede ayudar a mejorar su clasificación.”]

Si un motor de búsqueda intenta indexar (básicamente, leer y categorizar tu sitio web para saber qué tipo de búsquedas mostrar) tu sitio web y encuentra que la carga es lenta o se detiene debido a un error 504 de tiempo de espera de la puerta de enlace, puede perjudicar seriamente cómo decide clasificar tu sitio web en los resultados de búsqueda.

Cuanto más abajo aparezca tu sitio web en una página de resultados de motores de búsqueda (SERP), menos probable será que las personas hagan clic en él, y si los indexadores de motores de búsqueda encuentran errores de carga con suficiente frecuencia, pueden dejar de indexar tu sitio web por completo. ¿El resultado? Eliminarte de los resultados de búsqueda por completo.

En una era en la que los clics son moneda, los errores 504 no resueltos y repetitivos pueden retrasarte seriamente.

Cómo Solucionar el Error 504 Gateway Timeout Error (9 Posibilidades)

¿Te sientes intimidado? No lo estés. Si tu sitio web está reportando un error 504 de tiempo de espera de la puerta de enlace, aquí tienes lo que necesitas saber para solucionarlo.

1. Actualiza el Sitio 

¡En serio! ¡Podría ser tan simple como eso!

En caso de interrupciones de conectividad, problemas con dispositivos, sobrecarga de tráfico y mantenimiento, probablemente sea solo cuestión de mala sincronización. Dale un minuto y actualiza tu sitio para ver si esos problemas se han resuelto y tu sitio está nuevamente accesible como siempre.

Así es cómo hacerlo:

  • Google Chrome en Mac: Command + R
  • Google Chrome en Windows: Ctrl + R
  • Safari (actualmente solo compatible en Mac): Command + R
  • Microsoft Edge en Windows: CTRL+R
  • Microsoft Edge en Mac: Command + Shift + R
Diagrama "Atajos de teclado para actualizar el sitio" con comandos para Google Chrome, Safari y Microsoft Edge.

2. Cambia/Reinicia Dispositivos y Navegadores 

Errores de hardware, cachés desactualizados y otros problemas bastante simples pueden interrumpir la conexión al servidor y causar un error relacionado con el tiempo de espera.

Intenta reiniciar y también cambiar los dispositivos y/o navegadores en los que estás trabajando para ver si tu sitio carga. También puede ser útil reiniciar tu módem o enrutador. Esto puede solucionar todo. O, si descubres que tu sitio comienza a funcionar en algunos lugares, pero no en otros, al menos te ayudará a estrechar el foco sobre lo que está sucediendo.

Para reiniciar la mayoría de las máquinas de escritorio modernas en MacOS, ve al menú de Apple (en la parte superior izquierda) > Reiniciar. Para una computadora con Windows, debería ser algo así como ir a Inicio en la barra de tareas, seleccionar el icono de energía y luego Reiniciar en la siguiente pantalla.

Si bien generalmente no puedes abrir y reparar cualquier hardware que tenga un problema, es posible que puedas resolver por qué algunos navegadores tienen tiempo de espera mientras que otros funcionan perfectamente. Eso se explicará a continuación.

Recibe contenido directamente en tu bandeja de entrada

Suscríbete ahora para recibir todas las últimas actualizaciones, directamente en tu bandeja de entrada.

3. Borra la Caché del Navegador

Los navegadores a menudo almacenan información del sitio web localmente (en tu dispositivo) para ahorrar tiempo de carga. Cuando los registros almacenados se vuelven obsoletos, pueden provocar problemas de conectividad.

Para borrar la caché del navegador en Google Chrome, haz clic en los tres puntos verticales en la esquina superior derecha para abrir el menú de Chrome. Visita Herramientas > Borrar datos de navegación.

Aquí, podrás seleccionar qué deseas borrar y durante qué período de tiempo. Solo asegúrate de hacer clic en el botón Borrar datos para completar tu tarea. Ten en cuenta que esto puede verse diferente dependiendo de tu dispositivo y sistema operativo.

Cuadro de diálogo "Borrar datos de navegación" con las casillas "Cookies y otros datos del sitio" e "Imágenes y archivos en caché" marcadas.

Para Safari, selecciona Safari en la esquina superior izquierda, luego > Borrar historial > Todo el historial > Botón Borrar historial.

Para borrar la caché del navegador en Microsoft Edge, es tan fácil como escribir “edge://settings/clearbrowserdata” en la barra de direcciones y seleccionar qué deseas borrar y durante qué período de tiempo.

Ten en cuenta que estos procesos pueden verse diferentes dependiendo de tu dispositivo y la versión de cada sistema operativo que estés utilizando.

4. Considera Cambios y Caché en DNS

Si tú o tu proveedor de alojamiento han cambiado el servidor DNS de tu sitio web debido a la adopción de una nueva dirección IP o un nuevo proveedor de alojamiento de sitios WordPress, esos cambios pueden tardar en hacerse efectivos y en que todo funcione perfectamente nuevamente. Puede tomar hasta 48 horas para que la propagación completa se complete.

Sin embargo, si no ha habido cambios de los que estés al tanto, o ha pasado mucho tiempo desde el período de espera, podría ser otro problema de caché, esta vez a nivel de DNS.

Borrar la caché de DNS hará que el dispositivo que estás usando solicite información actualizada del servidor DNS en los sitios web, por lo que ya no intentará conectarse utilizando información de DNS obsoleta.

Así es como se hace:

Windows:

  • Presiona Win + R y escribe ipconfig /flushdns
  • Presiona Ctrl + Shift + Enter para ejecutar el símbolo del sistema
  • Deberías ver un mensaje de éxito cuando esté completo

Mac:

  • Asegúrate de estar ejecutando el sistema operativo más reciente
  • Abre el Terminal y escribe sudo killall -HUP mDNSResponder (El sistema operativo que estás utilizando puede afectar el éxito de este comando, así que si esto no parece funcionar, es posible que necesites buscar “limpiar caché de DNS macOS [tu versión aquí]”)
  • Presiona Enter
  • Ingresa tu contraseña de administrador si se te solicita, luego presiona Enter nuevamente para ejecutar el comando
  • Nota: Probablemente, no verás un mensaje de éxito después de esto. El comando simplemente se ejecutará.

Google Chrome (Sí, ¡tiene su propia caché de DNS!)

  • Ingresa “chrome://net-internals/#dns” en la barra de direcciones de Chrome y presiona Enter
  • Haz clic en el botón Borrar caché de host en la siguiente pantalla

5. Desactiva la CDN

Si aún no has resuelto el problema, el problema podría ser tu red de entrega de contenido. Y puedes averiguar si es el culpable desactivándolo temporalmente y viendo si eso ayuda.

Si estás utilizando un plugin de CDN para WordPress y puedes acceder a tus plugins, simplemente desactívalo y luego prueba si tu sitio se cargará. (Accede a esto a través del Panel de control de WordPress > plugins.)

Sin embargo, si no puedes acceder a tu administrador de WordPress debido al error de tiempo de espera 504, puedes acceder a tu sitio a través del administrador de archivos de tu host o el protocolo de transferencia de archivos seguro (SFTP). Así es como se hace para los usuarios de DreamHost.

Una vez que estés en el directorio de tu sitio, navega hasta el nombre de tu sitio web, luego wp-content > plugins > el archivo de tu plugin CDN. Cambia el nombre de ese archivo (algo como nombre de archivo_OFF), guarda tus cambios y actualiza tu sitio web para ver si eso ha funcionado.

Cuando termine este experimento, asegúrate de restaurar el nombre original de la carpeta y guárdalo nuevamente para que el plugin pueda funcionar. También puede ser útil visitar la sección de plugins de tu administrador de WordPress para asegurarte de que esté activado y funcionando.

Si bien esto no solucionará el problema, te dirá si tu CDN está actuando, a partir de lo cual puedes optar por cambiar a otro proveedor si tiene sentido.

6. Verifica los Plugins de WordPress 

Debido a que los plugins de WordPress son pequeños paquetes independientes de código que se integran con tu instancia de WordPress, si tienen fallos pueden interrumpir la conexión del servidor y causar un error 504.

Para averiguar si esto es lo que está sucediendo, el proceso es muy similar a lo que hicimos anteriormente.

Primero, si puedes acceder a tu administrador de WordPress, ve a la página de Plugins y desactiva todo. Luego, reactiva cada uno de ellos uno por uno y actualiza tu sitio para ver si se carga correctamente. Cuando identifiques al culpable, puedes desactivarlo y buscar una versión más nueva o una alternativa.

Pestaña de complementos seleccionada con la opción "Desactivar" anotada y aplicada a todos los elementos de la lista siguiente.

Si no puedes acceder al panel de control, tendrás que abrirlo a través del administrador de archivos de tu host o una plataforma SFTP.

En el directorio, navega hasta el nombre de tu sitio web > wp-content > plugins. Ahora, cambia el nombre de todo ese archivo (como plugins_OFF), guarda y recarga. Si funciona, sabrás que el problema está en tus plugins en algún lugar. Ahora deberías poder iniciar sesión en tu administrador de WP, navegar hasta tus plugins y volver a activarlos uno por uno para ver cuál afecta el tiempo de carga de tu sitio web.

7. Desactiva tu Firewall

Símbolos de firewall de Mac y Windows con un botón deslizante en "OFF".

Para desactivar temporalmente tu firewall y ver si su configuración está causando el error 504, sigue estos pasos:

Windows: 

  • Menú de inicio > Configuración > Privacidad y seguridad > Seguridad de Windows > Firewall y protección de red
  • Elige tu perfil de red
  • Encuentra Firewall de Microsoft Defender y desactívalo

Mac:

  • Menú de Apple > Preferencias del Sistema > Seguridad y privacidad > Firewall (en la parte superior de la ventana)
  • Selecciona el botón para activar el firewall
  • Es posible que debas desbloquear esta página usando tu contraseña para realizar cambios

(Nota: ¡Recomendamos volver a activar tu firewall! Si está causando errores de gateway, una vez que esté activado nuevamente, puedes tomarte un tiempo para investigar sus configuraciones y mejorar el rendimiento).

8. Cambia la Configuración del Servidor Web

Para los más técnicos, cambiar la configuración en Apache y NGINX puede ayudarte a reducir o incluso eliminar los errores 504.

Aquí tienes cómo hacerlo:

Apache

  • Encuentra tu archivo de configuración de Apache (httpd.conf o apache2.conf)
  • Ábrelo en un editor de texto
  • Modifica Timeout aumentando el valor predeterminado a 60 segundos. Así que si quieres que sea de 500 segundos, por ejemplo, usa Timeout 500
  • Guarda y cierra el editor
  • Ahora, abre y edita el archivo php.ini aumentando max_execution_time de los 30 segundos predeterminados a algo como 400 segundos con max_execution_time = 400
  • Guarda y reinicia Apache para que tus incrementos de tiempo surtan efecto usando sudo service apache2 restart

NGINX

  • Localiza el archivo de configuración de NGINX (a menudo /etc/nginx/nginx.conf)
  • Para NGINX + FastCGI Process Manager o cuando se usa NGINX como un proxy inverso para Apache, aquí están todos los lugares donde vas a aumentar los valores predeterminados (usaremos 500 y 400 segundos de nuevo):
    • proxy_connect_timeout 500;
    • proxy_send_timeout 500;
    • proxy_read_timeout 500;
    • send_timeout 500;
    • fastcgi_read_timeout 400;
  • Recarga el servidor NGINX: sudo service nginx reload
  • Edita el archivo de configuración del pool de PHP-FPM (/etc/php/[version]/fpm/pool.d/www.conf — pon tu propia versión en lugar de [version])
  • Establece: request_terminate_timeout = 400
  • En el archivo php.ini, establece: max_execution_time = 400
  • Recarga PHP-FPM y NGINX usando sudo service php[version]-fpm reload && sudo service nginx reload

¡Con suerte, eso debería ser el fin de esas sensibles configuraciones de tiempo de espera del servidor!

9. Recurre a tu Proveedor de Alojamiento para Obtener Soporte

Si estás tirando tus manos al aire y ya no sabes qué más hacer, siempre deberías poder contactar a tu proveedor de alojamiento de sitio web de WordPress para obtener soporte rápido y confiable.

Además de solucionar problemas juntos contigo, también pueden hacer rápidamente algunas cosas que tienden a eliminar los errores 504, como aumentar los trabajadores de PHP o actualizarte a un servidor con más o mejores recursos para manejar problemas relacionados con el tráfico.

¿Qué es lo que escuchamos? Si no estás trabajando con una empresa de alojamiento que esté dispuesta a hacer todo lo posible para asegurarse de que tu sitio web funcione bien tanto para los buscadores como para los motores de búsqueda, es hora de buscar uno nuevo.

En DreamHost, no solo nos encanta ayudar a propietarios, administradores y constructores de sitios web con errores comunes, ¡sino que también somos fanáticos de la plataforma WordPress en su conjunto!

Por eso ofrecemos DreamPress, un paquete que específicamente construimos para clientes que desean un sitio web de WordPress sin problemas pero actualizado y de alto rendimiento.

Y, para una experiencia totalmente personalizada, nuestro departamento de servicios profesionales puede encargarse del desarrollo web y administración de sitios web.

Ya sea que quieras profundizar con nosotros o simplemente cosechar los beneficios de un sitio web de WordPress exitoso sin ensuciarte las manos, DreamHost puede crear el plan de alojamiento y soporte perfecto para ti.

¡Programa una consulta gratuita con nuestro equipo de servicios profesionales y comienza a diseñar el futuro de tu sitio web hoy mismo!

Imagen de fondo del anuncio

Tu lo Sueñas, Nosotros lo Ponemos en Código

Aprovecha más de 20 años de experiencia en codificación adquiriendo el servicio de Desarrollo Web. Solo déjanos saber qué quieres para tu sitio — nosotros nos encargamos del resto.

Adquiere el Tuyo

Luke es el Director de Operaciones de IT. Es responsable de los equipos que mantienen las operaciones funcionando sin problemas... En su tiempo libre, disfruta leer fantasía/ciencia ficción y estar con su esposa y sus 4 hijos. Conéctate con Luke en LinkedIn: https://www.linkedin.com/in/luke-odom-039986a/