Error 504 gateway timeout en WordPress y arreglo
Guía completa para solucionar el error 504 gateway timeout en WordPress: causas, diagnóstico, configuración de servidor y pasos prácticos de arreglo.
Índice
- Qué es el error 504 gateway timeout en WordPress
- Cómo afecta el error 504 al SEO y a los usuarios
- Principales causas del error 504 en WordPress
- Comprobaciones rápidas antes de tocar el servidor
- Revisar servidor y límites de recursos
- Plugins, temas y PHP: cómo detectar conflictos
- Configuración de timeout en Nginx y Apache
- CDN, firewall y DNS: cómo evitar bloqueos
- Mejores prácticas para prevenir el error 504
- Checklist rápido para arreglar un 504 en WordPress
- Preguntas frecuentes
Qué es el error 504 gateway timeout en WordPress
El error 504 gateway timeout es un código de estado HTTP de la familia 5xx que indica que un servidor que actúa como gateway o proxy no ha recibido una respuesta a tiempo desde otro servidor de origen. En el contexto de WordPress, suele aparecer cuando el servidor web (Nginx, Apache o un balanceador de carga) no obtiene respuesta del backend de PHP o de la base de datos dentro del tiempo máximo configurado.
Aunque el mensaje puede variar según el proveedor de hosting o la CDN (por ejemplo, "504 Gateway Time-out", "504 Error" o "The server didn’t respond in time"), el significado es el mismo: la petición tarda demasiado en procesarse y se agota el tiempo de espera. Esto no siempre implica que el servidor esté caído, pero sí que está saturado, mal configurado o bloqueado por algún componente intermedio.
Idea clave: un error 504 en WordPress casi siempre es un problema de rendimiento, recursos o comunicación entre capas (servidor web, PHP, base de datos, CDN o firewall), no un simple fallo de contenido.
Cómo afecta el error 504 al SEO y a los usuarios
El error 504 gateway timeout no solo es molesto para los visitantes; también tiene impacto directo en la reputación de tu sitio y en el posicionamiento orgánico. Google y otros buscadores interpretan los errores 5xx como problemas del servidor, y si se repiten con frecuencia, pueden reducir el rastreo y la visibilidad de tu web.
- Mala experiencia de usuario: las páginas no cargan o tardan demasiado, lo que aumenta la tasa de rebote y reduce el tiempo de permanencia.
- Pérdida de conversiones: formularios, carritos de compra o áreas privadas pueden quedar inaccesibles en momentos clave.
- Impacto en SEO: si Googlebot encuentra repetidamente errores 504, puede disminuir la frecuencia de rastreo y, en casos extremos, desindexar algunas URLs.
- Problemas intermitentes difíciles de detectar: muchos 504 solo se producen bajo picos de tráfico o tareas pesadas, por lo que pasan desapercibidos hasta que el daño ya está hecho.
Recomendación SEO: si tu sitio ha sufrido errores 504 recurrentes, revisa en Google Search Console el informe de "Cobertura" o "Páginas indexadas" para detectar URLs afectadas y comprobar si el rastreo se ha reducido.
Principales causas del error 504 en WordPress
Para arreglar un error 504 gateway timeout en WordPress es fundamental entender qué lo provoca. Aunque cada entorno es distinto, la mayoría de casos se explican por un conjunto de causas recurrentes relacionadas con recursos, código y red.
- Consultas a base de datos muy pesadas: plugins o temas que ejecutan queries ineficientes, sin índices adecuados o sobre tablas muy grandes.
- Scripts PHP que tardan demasiado: procesos de importación, generación de informes, backups, cron jobs o tareas de WooCommerce que superan el tiempo máximo de ejecución.
- Falta de recursos en el hosting: límites bajos de CPU, RAM o I/O en planes compartidos, o contenedores mal dimensionados en VPS y hosting cloud.
- Configuración estricta de timeout: valores de tiempo de espera muy bajos en Nginx, Apache, PHP-FPM o en el balanceador de carga.
- Conflictos con CDN o firewall: Cloudflare, Sucuri, firewalls de aplicaciones web (WAF) o reglas de seguridad que bloquean o ralentizan ciertas peticiones.
- Problemas de red o DNS: resoluciones DNS lentas, cambios recientes de DNS no propagados o errores en la configuración de proxies inversos.
- Actualizaciones o tareas en segundo plano: actualizaciones masivas de plugins, regeneración de miniaturas, sincronizaciones con APIs externas, etc.
Consejo práctico: anota cuándo aparece el error 504 (hora, acción que realizabas, URL concreta). Esta información te ayudará a correlacionar el problema con tareas programadas, picos de tráfico o cambios recientes.
Comprobaciones rápidas antes de tocar el servidor
Antes de modificar configuraciones de servidor o editar archivos sensibles, conviene realizar una serie de comprobaciones rápidas. Estas pruebas iniciales permiten descartar problemas temporales o externos a tu instalación de WordPress.
- Comprobar si el error es global o parcial: prueba varias URLs (inicio, una entrada, el panel de administración). Si solo falla una sección concreta, el problema puede estar en un plugin o plantilla específica.
- Probar desde otra red o dispositivo: usa datos móviles o una VPN para descartar bloqueos por IP o problemas locales de conexión.
- Verificar el estado del proveedor de hosting: muchos hostings publican un panel de estado donde informan de incidencias, mantenimientos o caídas.
- Revisar la CDN (si la usas): comprueba el panel de Cloudflare, Akamai u otra CDN para ver si hay alertas o errores generalizados.
- Limpiar caché: borra la caché del navegador, la caché de WordPress (plugins como WP Rocket, W3 Total Cache, LiteSpeed Cache) y la caché de la CDN.
- Desactivar temporalmente el proxy de la CDN: en Cloudflare, por ejemplo, puedes poner el sitio en modo "DNS only" para ver si el error desaparece.
Buena práctica: documenta cada cambio que realices y prueba el sitio después de cada paso. Así podrás identificar con precisión qué acción resuelve o empeora el error 504.
Revisar servidor y límites de recursos
Si las comprobaciones rápidas no resuelven el problema, el siguiente paso es revisar el estado del servidor y los límites de recursos asignados a tu instalación de WordPress. En muchos casos, el error 504 aparece porque el servidor no puede procesar la carga actual dentro del tiempo permitido.
1. Consultar el uso de CPU, RAM y procesos
En un hosting administrado, normalmente tendrás un panel (cPanel, Plesk, panel propio del proveedor) donde ver el consumo de recursos. En un VPS o servidor dedicado, puedes usar herramientas como top, htop o el monitor de procesos del proveedor.
- Verifica si la CPU está constantemente al 100%.
- Comprueba si hay picos de RAM o uso de swap.
- Revisa el número de procesos PHP-FPM o Apache en ejecución.
2. Aumentar límites de PHP
En muchos hostings puedes ajustar los límites de PHP desde el panel o mediante un archivo php.ini, .user.ini o directivas en .htaccess. Los parámetros más relevantes para evitar errores 504 son:
max_execution_time: tiempo máximo de ejecución de un script PHP.memory_limit: memoria máxima que puede usar un script.max_input_time: tiempo máximo para procesar datos de entrada.
Como referencia, para sitios WordPress con plugins pesados o WooCommerce, valores como 120–300 segundos de max_execution_time y 256–512M de memory_limit suelen ser razonables, siempre que el servidor disponga de recursos suficientes.
3. Revisar logs de errores
Los registros de errores del servidor y de PHP son fundamentales para entender qué está ocurriendo justo antes del error 504. Busca en el panel de tu hosting las secciones "Error logs" o "Registros" y filtra por la hora en la que se produce el problema.
- Errores de PHP fatal o memory exhausted indican que un script se queda sin memoria.
- Mensajes de MySQL o MariaDB lentos pueden señalar consultas problemáticas.
- Entradas de timeout en Nginx o Apache confirman que la petición supera el tiempo máximo permitido.
Tip de diagnóstico: activa el modo WP_DEBUG en wp-config.php en un entorno de pruebas para registrar errores de PHP específicos de WordPress y relacionarlos con el 504.
Plugins, temas y PHP: cómo detectar conflictos
Una de las causas más frecuentes del error 504 gateway timeout en WordPress son los conflictos entre plugins, temas y la versión de PHP. Un código mal optimizado o incompatible puede disparar el consumo de recursos y provocar que las peticiones se agoten.
1. Desactivar plugins de forma controlada
Si puedes acceder al panel de administración, desactiva temporalmente todos los plugins y comprueba si el error desaparece. Si no puedes entrar en /wp-admin, renombra la carpeta wp-content/plugins por FTP o desde el gestor de archivos del hosting.
- Si al desactivar todos los plugins el error 504 desaparece, reactívalos uno a uno hasta encontrar el que provoca el problema.
- Presta especial atención a plugins de caché, seguridad, SEO, constructores visuales y comercio electrónico, ya que suelen ser los más pesados.
2. Probar con un tema por defecto
Algunos temas incluyen funcionalidades avanzadas que ejecutan consultas complejas o cargan muchos recursos. Cambia temporalmente a un tema por defecto de WordPress (por ejemplo, Twenty Twenty-Three) para descartar que el problema esté en la plantilla.
3. Revisar la versión de PHP
Usar una versión de PHP obsoleta o incompatible puede generar errores de rendimiento. Desde el panel de tu hosting, verifica qué versión de PHP está activa para tu sitio y compárala con las recomendaciones oficiales de WordPress.
- En general, se recomienda usar una versión de PHP moderna y soportada (por ejemplo, PHP 8.1 o superior, según compatibilidad de tus plugins y tema).
- Prueba a cambiar de versión (por ejemplo, de 7.4 a 8.1) en un entorno de pruebas para ver si el error 504 se reduce.
Enfoque seguro: realiza siempre estos cambios en un entorno de staging o clon del sitio cuando sea posible. Así evitarás dejar tu web principal inaccesible mientras pruebas.
Configuración de timeout en Nginx y Apache
Cuando el servidor está correctamente dimensionado pero las peticiones siguen agotando el tiempo de espera, es necesario revisar la configuración de timeout en el servidor web. Los ajustes varían según uses Nginx, Apache o una combinación de ambos con PHP-FPM.
1. Ajustes de timeout en Nginx
En servidores Nginx, los parámetros más relevantes para evitar errores 504 son:
proxy_read_timeout: tiempo máximo que Nginx espera la respuesta del servidor de aplicación (por ejemplo, PHP-FPM).fastcgi_read_timeout: tiempo máximo para leer la respuesta de PHP-FPM cuando se usa FastCGI.keepalive_timeout: tiempo de espera para conexiones inactivas.
Estos valores se definen normalmente en el archivo de configuración de Nginx (nginx.conf o archivos de sitios en sites-available). Un ejemplo básico sería:
location ~ \.php$ {
include fastcgi_params;
fastcgi_pass unix:/run/php/php8.1-fpm.sock;
fastcgi_read_timeout 300;
}
proxy_read_timeout 300;
keepalive_timeout 65;
2. Ajustes de timeout en Apache
En Apache, el parámetro principal es Timeout, que define el tiempo máximo que el servidor espera ciertas operaciones antes de cancelar la petición. También pueden influir directivas como ProxyTimeout si Apache actúa como proxy.
Estos valores se configuran en httpd.conf, apache2.conf o archivos de host virtual. Un ejemplo:
Timeout 300
ProxyTimeout 300
3. PHP-FPM y otros componentes
Si usas PHP-FPM, revisa también parámetros como request_terminate_timeout en el archivo de configuración del pool de PHP-FPM. Este valor define cuánto tiempo puede ejecutarse una petición antes de ser terminada.
Es importante encontrar un equilibrio: aumentar los timeouts puede evitar errores 504 en tareas pesadas, pero si son demasiado altos, podrías mantener ocupados recursos del servidor durante demasiado tiempo, afectando al resto de usuarios.
CDN, firewall y DNS: cómo evitar bloqueos
Cuando tu sitio WordPress utiliza una CDN, un firewall de aplicaciones web (WAF) o configuraciones DNS avanzadas, el error 504 gateway timeout puede originarse en alguno de estos componentes intermedios, incluso si el servidor de origen funciona correctamente.
1. Revisar la configuración de la CDN
Servicios como Cloudflare, StackPath o Akamai pueden devolver un 504 si no consiguen conectarse al servidor de origen o si este tarda demasiado en responder. Para diagnosticarlo:
- Comprueba en el panel de la CDN si hay alertas de origen inalcanzable o errores 5xx.
- Desactiva temporalmente el proxy (modo "bypass" o "DNS only") para ver si el error desaparece.
- Verifica que la IP de origen y el puerto configurados en la CDN son correctos.
2. Firewalls y reglas de seguridad
Los firewalls de red, WAFs y plugins de seguridad pueden bloquear o ralentizar ciertas peticiones, especialmente si detectan patrones sospechosos o picos de tráfico. Esto puede derivar en un 504 si la petición no llega correctamente al servidor de aplicación.
- Revisa los logs del firewall para ver si se están bloqueando IPs legítimas o peticiones del propio servidor.
- Añade a la lista blanca las IPs de la CDN y de servicios externos confiables.
- Reduce temporalmente el nivel de sensibilidad de las reglas de seguridad para comprobar si el error 504 se reduce.
3. Configuración DNS
Los problemas de DNS no suelen generar directamente un 504, pero sí pueden contribuir si la resolución es muy lenta o si hay registros mal configurados. Asegúrate de que:
- Los registros A y CNAME apuntan a la IP correcta del servidor.
- No hay bucles de DNS entre la CDN y el servidor de origen.
- El TTL es razonable para evitar demoras excesivas en la propagación de cambios.
Diagnóstico útil: usa herramientas como WhatsMyDNS o DNSChecker para verificar la propagación DNS y descartar errores de configuración.
Mejores prácticas para prevenir el error 504
Más allá de arreglar un error 504 puntual, es importante adoptar una serie de buenas prácticas que reduzcan la probabilidad de que vuelva a ocurrir. La prevención se basa en optimizar WordPress, dimensionar bien el servidor y monitorizar el rendimiento de forma continua.
1. Optimizar la base de datos
Una base de datos limpia y bien indexada responde más rápido y reduce el riesgo de timeouts en consultas pesadas.
- Elimina revisiones antiguas de entradas y páginas que ya no necesites.
- Borra transients caducados y tablas de plugins desinstalados.
- Añade índices a columnas que se usan frecuentemente en filtros y búsquedas (preferiblemente con ayuda de un administrador de bases de datos).
2. Usar caché de forma inteligente
La caché reduce drásticamente la carga sobre PHP y la base de datos, lo que disminuye la probabilidad de errores 504 bajo picos de tráfico.
- Implementa caché de página completa con plugins especializados o a nivel de servidor.
- Activa caché de objetos (Redis, Memcached) para acelerar consultas repetitivas.
- Configura reglas de exclusión para páginas dinámicas (carrito, checkout, áreas privadas).
3. Mantener WordPress, plugins y temas actualizados
Las actualizaciones no solo corrigen fallos de seguridad, también mejoran el rendimiento y la compatibilidad con nuevas versiones de PHP y servidores web.
- Programa revisiones periódicas para aplicar actualizaciones en un entorno de pruebas.
- Elimina plugins y temas que no utilices para reducir la superficie de problemas potenciales.
4. Escalar recursos según el crecimiento
Si tu proyecto crece en tráfico, contenido o funcionalidades, es probable que necesites más recursos de servidor.
- Valora pasar de un hosting compartido a un VPS o hosting administrado especializado en WordPress.
- Implementa balanceo de carga y escalado horizontal en proyectos de alto tráfico.
- Monitoriza el rendimiento con herramientas como New Relic, Datadog o el monitor del propio hosting.
En resumen: la mejor forma de evitar errores 504 es combinar una buena arquitectura de servidor, un WordPress optimizado y una monitorización proactiva que te alerte antes de que los problemas afecten a los usuarios.
Checklist rápido para arreglar un 504 en WordPress
Cuando te enfrentas a un error 504 gateway timeout en WordPress y necesitas una solución rápida, esta lista de verificación te ayudará a seguir un orden lógico de diagnóstico y corrección.
- Verifica si el error es general o afecta solo a ciertas páginas.
- Prueba desde otra red y limpia cachés (navegador, WordPress, CDN).
- Comprueba el estado del hosting y de la CDN.
- Desactiva temporalmente la CDN o ponla en modo "bypass".
- Desactiva todos los plugins y prueba de nuevo.
- Cambia temporalmente a un tema por defecto de WordPress.
- Revisa y aumenta, si es necesario, los límites de PHP (
max_execution_time,memory_limit). - Consulta los logs de errores de PHP, Nginx o Apache en el intervalo de tiempo del fallo.
- Ajusta los parámetros de timeout en Nginx, Apache y PHP-FPM (si tienes acceso).
- Revisa reglas de firewall y listas blancas de IPs (especialmente de la CDN).
- Optimiza la base de datos y revisa tareas programadas que puedan ser muy pesadas.
- Si el problema persiste, contacta con el soporte técnico de tu hosting con todos los detalles recopilados.
Consejo final: documenta la solución que ha funcionado en tu caso. Esto te permitirá actuar con rapidez si el error 504 vuelve a aparecer en el futuro.
Preguntas frecuentes
¿Cuál es la diferencia entre un error 502 y un error 504?
Ambos son errores de la familia 5xx relacionados con gateways o proxies, pero tienen matices distintos. El 502 Bad Gateway indica que el servidor recibió una respuesta inválida del servidor de origen, mientras que el 504 Gateway Timeout señala que el servidor no recibió ninguna respuesta a tiempo. En la práctica, el 502 suele estar más relacionado con errores de configuración o fallos inmediatos, y el 504 con problemas de rendimiento o tiempos de espera excesivos.
¿Puedo arreglar un error 504 en WordPress sin acceso al panel de administración?
Sí. Aunque no puedas entrar en /wp-admin, puedes actuar mediante FTP o el gestor de archivos del hosting. Por ejemplo, puedes renombrar la carpeta plugins para desactivar todos los plugins, cambiar de tema renombrando su carpeta o editar archivos de configuración como wp-config.php para ajustar parámetros de depuración. También puedes revisar logs y límites de recursos desde el panel del servidor.
¿Aumentar el timeout siempre es la mejor solución para un 504?
No necesariamente. Aumentar los valores de timeout en Nginx, Apache o PHP puede ser un parche temporal útil para tareas muy pesadas, pero si la causa es un código ineficiente, una base de datos mal optimizada o falta de recursos, solo estarás retrasando el problema. Lo ideal es combinar un ajuste razonable de timeouts con una optimización profunda de WordPress y, si es necesario, una mejora del plan de hosting.
¿Los errores 504 afectan al posicionamiento en Google?
Si el error 504 es puntual y se resuelve rápido, el impacto en SEO suele ser limitado. Sin embargo, si Googlebot encuentra repetidamente errores 5xx al rastrear tu sitio, puede reducir la frecuencia de rastreo, dejar de indexar algunas páginas o, en casos graves, degradar la visibilidad general del dominio. Por eso es importante monitorizar Search Console y solucionar los 504 de forma prioritaria.
¿Cuándo debo plantearme cambiar de hosting por errores 504?
Si después de optimizar WordPress, revisar plugins y temas, ajustar timeouts y aplicar buenas prácticas sigues sufriendo errores 504 bajo cargas moderadas, es probable que tu plan actual no ofrezca recursos suficientes o que la infraestructura no esté bien adaptada a WordPress. En ese caso, conviene valorar un hosting especializado en WordPress, un VPS administrado o una arquitectura escalable en la nube.
¿Necesitas asesoramiento legal?
Nuestro equipo de expertos está listo para ayudarte