CATEGORÍA DE ERROR
Errores HTTP y del servidor
Guías prácticas sobre respuestas HTTP 5xx y fallos a nivel de conexión, con un método estructurado para identificar si la causa está en el navegador, la red, el proxy, el servidor web, la aplicación o una dependencia del backend.

Acerca de esta categoría de errores
# Errores HTTP y del servidor
Los errores HTTP y del servidor ocurren cuando una solicitud no puede completarse con normalidad. Algunos fallos devuelven un código de estado HTTP, como 500, 502, 503 o 504. Otros ocurren antes de que el navegador reciba una respuesta HTTP y producen mensajes como ERR_CONNECTION_REFUSED o ERR_CONNECTION_TIMED_OUT.
El mensaje del navegador identifica el síntoma, pero no siempre el componente que requiere atención. Empieza por localizar el límite en el que se produce el fallo: del navegador a la red, de la red al servicio que está escuchando, del proxy al backend o de la aplicación a una dependencia.
Identifica primero el tipo de fallo
Se devolvió un código de estado HTTP
Un estado numérico significa que un componente compatible con HTTP respondió. Ese componente puede ser el servidor web de origen, un reverse proxy, un balanceador de carga o una CDN, y no necesariamente la aplicación.
- 500 Internal Server Error: El servidor encontró una condición inesperada al procesar la solicitud. Empieza por los logs de la aplicación y del servidor web. Consulta la [guía de 500 Internal Server Error](/http-500-internal-server-error).
- 502 Bad Gateway: Un proxy recibió del backend una respuesta no válida, vacía o inutilizable. Comprueba el proceso del backend, el host y el puerto upstream, y la conexión entre el proxy y el origen. Consulta la [guía de 502 Bad Gateway](/http-502-bad-gateway).
- 503 Service Unavailable: El servicio no puede gestionar la solicitud en ese momento. Algunas posibilidades son el modo de mantenimiento, una capacidad agotada, un proceso no disponible o una dependencia que ha fallado. Consulta la [guía de 503 Service Unavailable](/http-503-service-unavailable).
- 504 Gateway Timeout: Un gateway reenvió la solicitud, pero no recibió una respuesta antes de que expirara su tiempo de espera. El backend puede seguir funcionando, pero estar lento, sobrecargado o esperando a otro servicio. Consulta la [guía de 504 Gateway Timeout](/http-504-gateway-timeout).
Un código de estado, por sí solo, no demuestra qué capa falló. Inspecciona la identificación de la respuesta, los encabezados, la marca de tiempo y los logs para determinar si la respuesta provino del origen o de un intermediario.
El navegador informa de un fallo de conexión
Un error a nivel de conexión significa que el navegador no recibió una respuesta HTTP normal del endpoint esperado.
- ERR_CONNECTION_REFUSED: Se llegó al destino, pero la conexión fue rechazada. Comprueba si hay un servicio escuchando en el puerto esperado y si las reglas de seguridad locales o de red afectan al acceso. Para entornos de desarrollo, consulta [ERR_CONNECTION_REFUSED en localhost](/err-connection-refused-localhost).
- ERR_CONNECTION_TIMED_OUT: El navegador esperó sin recibir una respuesta utilizable. Investiga la ruta de red, el enrutamiento, el filtrado, DNS, la accesibilidad del servidor y la disponibilidad de recursos antes de buscar un error HTTP generado por la aplicación. Consulta la [guía de ERR_CONNECTION_TIMED_OUT](/err-connection-timed-out).
Secuencia práctica de diagnóstico
1. Reproduce y registra el fallo
Recarga una vez y prueba después la misma URL en una ventana privada o desde otro dispositivo. Registra la URL exacta, el texto del error, el código de estado, la hora aproximada y la página de respuesta visible. Una página de CDN o proxy con su propia marca sugiere que la solicitud llegó a un intermediario; un mensaje genérico del navegador puede significar que no llegó ninguna respuesta HTTP utilizable.
Si solo falla un navegador o dispositivo, inspecciona su proxy, VPN, caché DNS, extensiones y software de seguridad local. Si la misma URL falla en distintos dispositivos y redes, es más probable que el problema esté en el servidor, el proxy, el origen o una ruta de red compartida.
2. Define el alcance afectado
Determina si el problema afecta a una ruta, un host, una aplicación completa o todo el servicio.
- El fallo de una sola ruta puede indicar código de la aplicación, una dependencia específica de esa ruta o una consulta lenta.
- Que todas las rutas devuelvan 500 sugiere un problema más amplio de la aplicación o de la configuración del servidor.
- Un 502 o 504 en todo un proxy dirige la atención al proceso de origen, la conexión upstream o la configuración del proxy.
- Una conexión rechazada en un puerto puede significar que el servicio esperado no está escuchando, mientras otros servicios siguen disponibles.
Cuando sea posible, compara un endpoint que funciona con el que falla. Las diferencias en el enrutamiento, la autenticación, las dependencias y el estado del despliegue pueden ser más informativas que cambiar configuraciones no relacionadas del cliente.
3. Comprueba el componente que generó la respuesta
Para un 500, correlaciona los logs de la aplicación y del servidor web con la hora del fallo. Para las respuestas 502, 503 y 504, inspecciona tanto los logs del proxy o gateway como los del backend. Busca un proceso detenido, un despliegue fallido, un fallo de conexión con una dependencia, agotamiento de recursos o una solicitud que supere un tiempo de espera relevante.
Para un ERR_CONNECTION_REFUSED local, verifica que Apache o Nginx estén ejecutándose y que el puerto configurado esté disponible. XAMPP, Laragon y MAMP pueden mostrar este síntoma cuando su servidor web no se ha iniciado o cuando otro programa impide que se vincule al puerto esperado.
4. Prueba el origen y las dependencias por separado
Si administras el servicio, comprueba si el backend acepta conexiones y responde a un endpoint sencillo, sin asumir que una conexión correcta a través del proxy demuestra que la aplicación está sana. Después, comprueba los servicios necesarios, como la base de datos u otras dependencias configuradas.
Un backend activo pero constantemente lento es más coherente con un 504 que un backend detenido o que devuelve una respuesta inutilizable, lo que puede producir un 502. Un 503 puede producirse antes de procesar una solicitud de la aplicación si el servicio no está disponible deliberadamente o si no se puede utilizar una dependencia necesaria.
Evita las recargas repetidas como método de diagnóstico. Pueden añadir carga mientras se investiga el problema subyacente del proceso, la dependencia o el tiempo de espera.
Usa los detalles del error para localizar la capa
El cuerpo de la respuesta, los encabezados y la marca de tiempo pueden revelar qué componente gestionó el fallo:
- Un mensaje genérico del navegador suele indicar que no se recibió ninguna respuesta HTTP utilizable.
- Una página de proxy o CDN con su propia marca indica que un intermediario generó o presentó el error.
- Una página de error específica de la aplicación puede apuntar más directamente a la aplicación de origen.
En fallos intermitentes, correlaciona la hora con despliegues, aumentos de tráfico, reinicios de procesos y latencia de las dependencias. En fallos constantes, compara una solicitud que funciona con la que falla e inspecciona las diferencias de configuración antes de cambiar los ajustes del servidor.
En sitios que usan Cloudflare, un 504 con la marca de Cloudflare generalmente significa que su edge no pudo obtener una respuesta del origen dentro de la ventana de tiempo de espera aplicable. La [guía 504 Gateway Timeout detrás de Cloudflare](/504-gateway-timeout-cloudflare) explica cómo separar un problema del origen de un tiempo de espera producido por otro gateway o por el propio origen.
Qué incluir al solicitar ayuda
Un informe útil incluye:
- El texto exacto del error y el código de estado
- La ruta de la URL y la hora aproximada del fallo
- Si el problema afecta a otros usuarios, dispositivos o redes
- Si intervienen un proxy, una CDN o un balanceador de carga
- Las entradas relevantes de los logs del servidor web, el proxy y la aplicación, con las contraseñas, tokens y otros secretos eliminados
El objetivo es identificar el límite en el que se produce el fallo. Una vez localizado, la guía de errores correspondiente puede proporcionar comprobaciones más específicas, sin tratar como intercambiables las causas relacionadas con el navegador, la red, el proxy y el backend.
BIBLIOTECA DE GUÍAS
Guías de errores de esta categoría
Empieza por el error visible y sigue el diagnóstico hasta la verificación.
Error 403 Forbidden: qué significa y cómo solucionarlo
Una respuesta HTTP 403 Forbidden significa que el servidor entendió la solicitud, pero se niega a autorizar el acceso al recurso solicitado. La solicitud puede estar blo…
Leer diagnóstico →Error 404 Not Found: qué significa y cómo solucionarlo
HTTP 404 Not Found significa que se alcanzó el servidor, pero no pudo encontrar una representación vigente del recurso solicitado. Comprueba primero si la URL contiene e…
Leer diagnóstico →
500 Internal Server Error
Un 500 Internal Server Error significa que el servidor encontró un problema inesperado al procesar la solicitud. Normalmente, el navegador no puede identificar la causa,…
Leer diagnóstico →
502 Bad Gateway
502 Bad Gateway significa que un reverse proxy, balanceador de carga o CDN no pudo obtener una respuesta válida del servidor backend. Comprueba el proceso backend, el re…
Leer diagnóstico →
503 Service Unavailable
Una respuesta 503 Service Unavailable significa que el servicio no puede gestionar la solicitud en ese momento. Entre las causas habituales se incluyen el agotamiento de…
Leer diagnóstico →
504 Gateway Timeout
504 Gateway Timeout significa que un proxy, CDN, load balancer o gateway esperó una respuesta del backend, pero su tiempo de espera expiró primero. El backend puede segu…
Leer diagnóstico →
504 Gateway Timeout detrás de Cloudflare
Un 504 Gateway Timeout con la marca de Cloudflare normalmente significa que el edge de Cloudflare no recibió a tiempo una respuesta de tu origen. Entre las causas habitu…
Leer diagnóstico →Error 1020 / 1015 de Cloudflare: acceso denegado y límite de solicitudes
El Error 1020 de Cloudflare significa que un firewall, WAF o regla de seguridad de Cloudflare denegó la solicitud. El Error 1015 significa que la solicitud coincidió con…
Leer diagnóstico →
ERR_CONNECTION_REFUSED
ERR_CONNECTION_REFUSED significa que el navegador llegó a una dirección de destino, pero la conexión fue rechazada antes de que el sitio web devolviera una respuesta. En…
Leer diagnóstico →
ERR_CONNECTION_REFUSED en localhost (XAMPP, Laragon, MAMP)
`ERR_CONNECTION_REFUSED` en localhost significa que el navegador no puede conectarse a un servidor web local que esté escuchando. En XAMPP, Laragon o MAMP, confirma prim…
Leer diagnóstico →
ERR_CONNECTION_TIMED_OUT
`ERR_CONNECTION_TIMED_OUT` significa que el navegador esperó una respuesta del servidor de destino o de un intermediario, pero no llegó ninguna respuesta utilizable ante…
Leer diagnóstico →ERR_EMPTY_RESPONSE
`ERR_EMPTY_RESPONSE` significa que la conexión se estableció, pero se cerró antes de que el navegador recibiera encabezados de respuesta HTTP utilizables o datos del cue…
Leer diagnóstico →HTTP 200 OK: qué significa
HTTP 200 OK significa que el servidor procesó correctamente la solicitud y devolvió una respuesta. Normalmente es lo esperado, pero no demuestra que el contenido de la p…
Leer diagnóstico →HTTP 201 Created: qué significa
HTTP 201 Created significa que el servidor procesó correctamente la solicitud y creó uno o más recursos. Se devuelve habitualmente después de un POST correcto o de una s…
Leer diagnóstico →HTTP 204 No Content: qué significa
HTTP 204 No Content significa que el servidor procesó correctamente la solicitud y devolvió intencionadamente ningún cuerpo de respuesta. No es automáticamente un error …
Leer diagnóstico →HTTP 301 Moved Permanently: qué significa
HTTP 301 Moved Permanently significa que al recurso solicitado se le ha asignado una redirección permanente a otra URL, normalmente identificada por la cabecera de respu…
Leer diagnóstico →HTTP 302 Found: qué significa
HTTP 302 Found significa que el recurso solicitado está disponible temporalmente en otra URL. La respuesta suele incluir un encabezado `Location` que indica adónde debe …
Leer diagnóstico →HTTP 304 Not Modified: qué significa
HTTP 304 Not Modified significa que un cliente realizó una solicitud condicional `GET` o `HEAD` y que la representación almacenada en caché sigue estando actualizada. El…
Leer diagnóstico →HTTP 400 Bad Request: qué significa y cómo solucionarlo
HTTP 400 Bad Request significa que el servidor o un intermediario no pudo procesar la solicitud porque su sintaxis, parámetros, encabezados, URL u otros detalles no eran…
Leer diagnóstico →HTTP 401 Unauthorized: qué significa y cómo solucionarlo
HTTP 401 Unauthorized significa que el endpoint requiere autenticación, pero la solicitud no incluía credenciales aceptables o estas fueron rechazadas. Confirma la URL e…
Leer diagnóstico →HTTP 405 Method Not Allowed: qué significa y cómo solucionarlo
HTTP 405 Method Not Allowed significa que el servidor entendió el método HTTP, como GET, POST, PUT o DELETE, pero que ese método no es compatible con el recurso solicita…
Leer diagnóstico →HTTP 408 Request Timeout: qué significa y cómo solucionarlo
HTTP 408 Request Timeout significa que el servidor o un intermediario no recibió la solicitud HTTP completa dentro del tiempo que estaba preparado para esperar. Puede de…
Leer diagnóstico →HTTP 409 Conflict: qué significa y cómo solucionarlo
HTTP 409 Conflict significa que el servidor no puede completar una solicitud porque entra en conflicto con el estado actual del recurso de destino. Suele ocurrir cuando …
Leer diagnóstico →HTTP 410 Gone: qué significa y cómo solucionarlo
HTTP 410 Gone significa que el servidor considera que el recurso solicitado se ha eliminado intencionadamente y que probablemente no volverá a estar disponible en esa UR…
Leer diagnóstico →HTTP 413 Content Too Large: qué significa y cómo solucionarlo
HTTP 413 Content Too Large significa que el cuerpo de la solicitud es más grande de lo que el servidor o un componente intermediario está dispuesto o configurado para pr…
Leer diagnóstico →HTTP 414 URI demasiado largo: qué significa y cómo solucionarlo
HTTP 414 URI Too Long significa que el destino de la solicitud, normalmente la URL y su cadena de consulta, es más largo de lo que el servidor receptor o un intermediari…
Leer diagnóstico →HTTP 415 Unsupported Media Type: qué significa y cómo solucionarlo
HTTP 415 Unsupported Media Type significa que el servidor rechazó la solicitud porque el formato o la codificación del contenido enviado no es compatible con ese recurso…
Leer diagnóstico →HTTP 422 Contenido no procesable: qué significa y cómo solucionarlo
HTTP 422 Contenido no procesable significa que el servidor entendió el formato y la sintaxis de la solicitud, pero no pudo procesar las instrucciones o los datos que con…
Leer diagnóstico →HTTP 429 Too Many Requests: qué significa y cómo solucionarlo
HTTP 429 Too Many Requests significa que el servidor o un intermediario ha aplicado rate limiting al cliente después de recibir demasiadas solicitudes en un periodo defi…
Leer diagnóstico →Errores de cliente HTTP 4xx: significado, diagnóstico y soluciones
Una respuesta HTTP 4xx significa que el servidor o un intermediario no pudo completar la solicitud tal como la recibió. Identifica primero el código de estado exacto y, …
Leer diagnóstico →HTTP 501 Not Implemented: qué significa y cómo solucionarlo
HTTP 501 Not Implemented significa que el servidor no admite la funcionalidad necesaria para completar la solicitud. Confirma la URL exacta, el método HTTP, las cabecera…
Leer diagnóstico →HTTP 505 HTTP Version Not Supported: qué significa y cómo solucionarlo
HTTP 505 significa que el servidor no admite la versión principal del protocolo HTTP utilizada en la solicitud. Es distinto de un fallo de DNS o TLS, porque un endpoint …
Leer diagnóstico →Errores de servidor HTTP 5xx: significado, diagnóstico y soluciones
Una respuesta HTTP 5xx significa que un servidor o intermediario no pudo completar una solicitud que, por lo demás, era válida. Identifica el código de estado exacto y l…
Leer diagnóstico →Site Administrator
Última revisión: September 25, 2026
FAQ
Preguntas frecuentes
¿Cuál es la diferencia entre un error 500 y un error de conexión?
Un error 500 significa que un servidor compatible con HTTP devolvió una respuesta, pero encontró una condición inesperada al procesar la solicitud. Un error de conexión, como ERR_CONNECTION_REFUSED o ERR_CONNECTION_TIMED_OUT, ocurre antes de que el navegador reciba una respuesta HTTP normal, por lo que el diagnóstico comienza con los servicios que están escuchando, el acceso a la red y la ruta de conexión.
¿Un error 502 o 504 suele estar causado por el navegador?
Normalmente no. Un 502 significa que un proxy recibió del backend una respuesta no válida, vacía o inutilizable. Un 504 significa que el backend no respondió dentro de la ventana de tiempo de espera del gateway. Comprueba los logs del proxy, el proceso de origen y el backend antes de cambiar la configuración del navegador.
¿Cómo puedo distinguir una página de mantenimiento 503 de un servicio sobrecargado?
El código de estado por sí solo no permite distinguir esas causas. Comprueba la configuración de mantenimiento o despliegue, el estado del proceso, el uso de recursos y la disponibilidad de las dependencias. Un 503 puede ser intencionado, deberse a límites de capacidad o activarse cuando un servicio necesario, como una base de datos, no está disponible.
¿Por qué se produce ERR_CONNECTION_REFUSED en localhost?
Puede que el servidor web local no esté ejecutándose o que otro programa ya esté utilizando el puerto configurado para Apache o Nginx. Comprueba los controles del servidor en XAMPP, Laragon o MAMP, confirma el puerto configurado y revisa el error de inicio o de vinculación del servidor antes de investigar el código del proyecto.
¿Qué debería comprobar primero cuando aparece ERR_CONNECTION_TIMED_OUT?
Prueba la URL desde otra red o dispositivo y, después, revisa las condiciones de la VPN, el proxy, el firewall y DNS. Si falla de forma constante en distintas redes, investiga el enrutamiento, la accesibilidad del servidor, el filtrado y el uso de recursos. Un tiempo de espera significa que el navegador esperó sin recibir una respuesta utilizable, no que recibiera un rechazo explícito.
¿Un 504 de Cloudflare significa que Cloudflare es el servidor de origen?
No. Un 504 generado por Cloudflare generalmente significa que el edge de Cloudflare envió la solicitud al origen, pero no recibió una respuesta dentro de la ventana de tiempo de espera aplicable. Inspecciona el rendimiento y la conectividad del origen y, después, utiliza la [guía de Cloudflare 504](/504-gateway-timeout-cloudflare) para identificar la capa que produjo el tiempo de espera.