Analizamos el error HTTP 502 Bad Gateway: cuáles son las causas y cómo solucionarlo.
Tabla de contenidos
- ¿Qué es el error 502 Bad Gateway?
- Diferentes mensajes de error 502
- Causas del error 502 Bad Gateway
- Cómo reparar el código de error 502 Bad Gateway
- 1 Verifica que tu servidor está en funcionamiento
- 2 Verifica que se puede acceder a tu servidor
- Verifica que tu servidor se ve desde varias redes y continentes
- 3 Verifica la carga de tu servidor
- 4 Verifica los límites de recursos de tu hosting
- 5 Comprueba el estado del servicio CDN o proxy
- 6 Inspecciona el cortafuegos de tu servidor
- 7 Inspecciona los DNS
- 8 Revisa tu base de datos
- 9 Revisa tu WordPress o aplicación
- Todos los Códigos de Estado HTTP
¿Qué es el error 502 Bad Gateway?
El código de estado de respuesta HTTP 502 Bad Gateway indica que tu servidor está detrás de un proxy (por ejemplo, un CDN, un balanceador de carga «Load Balancer», un cortafuegos, etc.) y que ese proxy no ve tu servidor de contenidos. Por ejemplo, puedes dar con el error 502 si tu CDN o Firewall no puede llegar al servidor web y por consiguiente el contenido no se puede entregar al usuario.
Diferentes mensajes de error 502
- “Error 502 Bad gateway”
- “Proxy Error. The proxy server received an invalid response from an upstream server.”
- “502 Bad Gateway Nginx”
- “HTTP 502”
- “502 Service Temporarily Overloaded”
- “502 Server Error: The server encountered a temporary error and could not complete your request”
- “502. That’s an error. The server encountered a temporary error and could not complete your request”
- “Temporary Error (502)”
Las siguientes secciones muestran las distintas causas y cómo corregir el error en cada caso:
Causas del error 502 Bad Gateway
El error 502 significa que el servicio proxy que actúa como puerta de enlace tiene problemas para obtener el contenido de tu servidor. Este servicio proxy que tienes delante del servidor de tu web puede ser un CDN, un Load Balancer, un Firewall, etc.
Aquí tienes una lista de todas las diferentes causas:
- Hay un problema de red entre tu servidor y tu servicio proxy.
- Tu servidor está bloqueando el acceso al servicio de proxy.
- Tu servidor está caído.
- Tu servidor está activo pero no puede manejar más conexiones.
- Algunas solicitudes del servidor devuelven un error.
- Hay una zona DNS no válida o incorrecta.
Cómo reparar el código de error 502 Bad Gateway
Puede seguir los siguientes pasos para identificar la causa y corregir el error 502:
1 Verifica que tu servidor está en funcionamiento
Este es el primer paso que tienes que verificar. Inicia una sesión en la consola o entra al panel de gestión de tu servidor y verifica que todos los servicios web se estén ejecutando.
2 Verifica que se puede acceder a tu servidor
Deshabilita temporalmente el servicio de proxy o evítalo forzando las zonas DNS de tu dominio. Con este método validamos que tu servidor funciona correctamente y es capaz de servir páginas sin arrojar errores.
Describimos a continuación los dos métodos:
Prueba tu servidor sin pasar por el servicio de proxy
Puedes esquivar el servicio de proxy, apuntando las zonas DNS de tu dominio web directamente a la IP de tu servidor.
Puedes forzar las zonas DNS, modificando el fichero host de tu ordenador.
Tienes herramientas para ayudarte como:
SwitchHosts para Mac OSX o
HostsFileEditor para Windows.
Prueba tu servidor deshabilitando el servicio de proxy
Como alternativa para verificar si se puede acceder a tu servidor, puedes deshabilitar temporalmente el servicio de proxy.
Si está utilizando Cloudflare, puede deshabilitarlo fácilmente desde el panel de administración:
- Inicia sesión y
- en la barra lateral derecha, localiza las Acciones rápidas,
- activa el Modo de desarrollo «Development Mode»:
Verifica que tu servidor se ve desde varias redes y continentes
Si todo está ok tras deshabilitar temporalmente el servicio de proxy, el siguiente punto de control recomendado es verificar si se puede acceder a este servidor a través de diferentes redes y países.
Te recomendamos la herramienta online Uptrends Website Uptime Test:
Esta herramienta Uptrends revisa tu web desde diferentes nodos de países. Si alguna verificación falla, estas ante posibles problemas de red que probablemente no estén bajo tu control.
3 Verifica la carga de tu servidor
Si el servidor web alcanza sus límites, no podrá responder a más solicitudes y el servicio proxy que tengas delante te devolverá el código de estado 502 Bad Gateway.
El motivo podría ser un interés inesperadamente alto, un pico de audiencia o incluso un ataque DoS o DDoS (Distributed Denial of Service). Esto significa que alguien está utilizando una red de bots para ayudar a sobrecargar la capacidad del servidor y provocar una falla del sistema.
Es probable que tu servicio de proxy, CDN o Load Balancer, esté preparado para manejar volúmenes elevados de tráfico, pero eso no implica que lo esté tu servidor web. Con las webs WordPress es tremendamente fácil sobrecargar el servidor, pues son muchas las páginas con tiempo de proceso elevado y que no podemos servir desde caché.
La mejor solución en caso de tráfico no legítimo es estar protegido por un servicio de CDN o Firewall capaz de filtrar el tráfico y con infraestructura preparada para frenar los ataques DoS y DDoS.
Como especialistas en WordPress, sabemos lo importante que es disponer de fuertes medidas de seguridad.
Aprendizaje heurístico compartido,
Aplicamos tres técnicas para filtrar el tráfico:
Listas negras de fuentes externas y
Mitigación de ataques DDoS.
Si el tráfico es legítimo, las soluciones son obvias:
- Añade un buen sistema de caché a tu website.
- Y si el sistema de caché no es suficiente, incrementa los recursos de tu servidor.
- Si económicamente no puedes afrontar el incremento de recursos, la opción final es aligerar tu web. Si trabajas con WordPress, reduce la cantidad de plugins al mínimo imprescindible.
4 Verifica los límites de recursos de tu hosting
Si tu web está en un alojamiento compartido, verifica que no estés excediendo los límites de recursos.
El establecimiento de límites no es algo que puedas encontrar entre las funcionalidades de un «shared hosting». Pero ten en cuenta que para preservar la convivencia entre todos los sitios de un servidor compartido, es muy común que el proveedor establezca límites en los tiempos de proceso, en el número de «php workers» y en el tráfico.
5 Comprueba el estado del servicio CDN o proxy
El problema de acceso a la red podría ser un problema de red del servicio de proxy. Consulta la «Página de estado» del servicio de tu proveedor.
Esta es una lista de «Páginas de estado» de los principales proveedores de servicios de Load Balancing, CDN y servicios de seguridad:
- Página de estado de Cloudflare
- Estado de Sucuri
- Estado de KeyCDN
- Estado de StackPath
- Estado de los servicios en la nube de Google
- Estado de Amazon Cloudfront
6 Inspecciona el cortafuegos de tu servidor
Si tu servidor web tiene un firewall local: «iptables», «Uncomplicated Firewall – UFU», «CSF Firewall», «Fail2ban», «FireHOL», entonces podría ser éste firewall el que está bloqueando el acceso a tu servicio de proxy.
Inspecciona tu cortafuegos.
La mejor solución, si tu cortafuegos lo permite, es agregar las direcciones IP de tu proveedor (CDN, Load Balancer,… ) al sistema de lista blanca «whitelist».
Por ejemplo, en Wetopi, usamos y recomendamos Cloudflare como CDN y proxy inverso de seguridad. Para evitar problemas de error «502 Bad Gateway», nuestros firewalls tienen la lista pública de direcciones IP de Cloudflare en el sistema de la lista blanca «whitelist».
7 Inspecciona los DNS
Si estás en proceso de publicar tu dominio o lo estás modificando, el problema podría estar en el DNS
Para corregir el error 502 debido a un problema de DNS, sigue esta lista de verificación:
- Si acabas de migrar tu sitio a un nuevo host, es importante esperar a que las zonas DNS se propaguen por completo, lo que puede demorarse hasta 24 horas en algunos casos. Esto depende del valor TTL de tus registros DNS.
- El nombre de dominio no se resuelve en la IP correcta o no se resuelve en ninguna IP. Verifica la definición de tu zona DNS de acuerdo con las instrucciones proporcionadas por su servicio de proxy: CDN, Load Balancer, Security Service, …
8 Revisa tu base de datos
Si llegaste hasta aquí y ninguno de los métodos anteriores funciona, podría ser que el error se debiera a un problema en tu web o aplicación, pero en una página específica o solicitud de URL.
Lo primero, verificar el estado de la base de datos:
- buscar errores en los archivos de registro
- repara y/o optimiza las tablas e índices.
9 Revisa tu WordPress o aplicación
Si la base de datos está bien, la solución final para corregir el error 502 en una página web o URL específica es depurar tu aplicación o gestor de contenidos.
Si su sitio web trabaja con WordPress, prueba lo siguiente:
- deshabilita todos los plugin,
- intenta reproducir el error,
- si el problema desaparece, entonces el error 502 es causado por un plugin de WordPress.
Para no romper tu web producción…
los entornos de prueba “staging” son la solución.
Clonar un sitio de WordPress con Wetopi es tan fácil como un simple clic.
Para encontrar el plugin que causa el problema, te recomendamos seguir este proceso:
- Deshabilita todos los plugins.
- Verifica la página que da el error HTTP 502.
- Si la página funciona, reactiva uno de los plugins de la lista de deshabilitados y salta de nuevo al paso 2.
- Si la página falla, este último plugin que has activado, podría ser el que está causando el conflicto que te lleva al error HTTP 502.
¿No tienes una cuenta en wetopi?
Incluye servidores desarrollo Gratis.
Sin tarjeta de crédito.
Todos los Códigos de Estado HTTP
200 OK
201 Created
202 Accepted
203 Non-Authoritative Information
204 No Content
205 Reset Content
206 Partial Content
207 Multi-Status
208 Already Reported
226 IM Used
300 Multiple Choices
301 Moved Permanently
302 Found
303 See Other
304 Not Modified
305 Use Proxy
307 Temporary Redirect
308 Permanent Redirect
402 Payment Required
404 Not Found
406 Not Acceptable
407 Proxy Authentication Required
408 Request Timeout
409 Conflict
411 Length Required
412 Precondition Failed
413 Payload Too Large
414 Request-URI Too Long
415 Unsupported Media Type
416 Requested Range Not Satisfiable
417 Expectation Failed
418 I’m A Teapot
421 Misdirected Request
422 Unprocessable Entity
423 Locked
424 Failed Dependency
426 Upgrade Required
428 Precondition Required
429 Too Many Requests
431 Request Header Fields Too Large
444 Connection Closed Without Response
451 Unavailable For Legal Reasons
501 Not Implemented
505 HTTP Version Not Supported
506 Variant Also Negotiates
507 Insufficient Storage
508 Loop Detected
510 Not Extended
511 Network Authentication Required
599 Network Connect Timeout Error