504
Gateway Timeout
Explicación general del código de estado 504
El error HTTP 504 Gateway Timeout se produce cuando un servidor intenta responder a una solicitud de un cliente pero es incapaz de hacerlo en un tiempo razonable. Este error suele denominarse "tiempo de espera de la pasarela" porque suele producirse cuando un servidor proxy o pasarela que media entre el cliente y el servidor es incapaz de conectarse o recibir una respuesta del servidor. Esto puede deberse a varias razones, como la sobrecarga del servidor, problemas de red o una configuración insuficiente del proxy o pasarela.
.
Especificación del código de estado HTTP 504
Fuente / Cita de: El código de estado HTTP 504 Gateway Timeout se especifica en la sección 6.6.5 de RFC7231.
Protocolo HTTP
¿Cómo lanzar un código de estado 504 con PHP?
Para lanzar el código de estado HTTP 504 en una página web, se puede utilizar la función PHP http_response_code. La sintaxis es la siguiente: http_response_code(504) (PHP 5 >= 5.4.0, PHP 7, PHP 8)
Probar el código de estado HTTP 504
Para poder mostrar el código de estado HTTP (en este caso 504 Gateway Timeout) y otra información en el lado del cliente, debe abrirse la consola de desarrollo con F12. A continuación, vaya a la pestaña "Red". Ahora se puede abrir la página, el sitio web (ejemplo index.php) debe ser visible en la pestaña de red. Esta debe ser seleccionada y luego la sección Herder debe ser seleccionada. El usuario verá entonces el siguiente resultado:
URL: https://http-statuscode.com/errorCodeExample.php?code=504
Estado: 504 Gateway Timeout
Esos: Network
Dirección IP: XX.XX.XX.XX
¿Cómo puedo solucionar el problema del código de estado 504?
Hay varias razones posibles por las que puede producirse un error HTTP 504 Gateway Timeout "Tiempo de espera de la puerta de enlace", como por ejemplo:
- Sobrecarga del servidor: si un servidor recibe demasiadas solicitudes y no puede responderlas en un tiempo razonable, puede producirse un error de tiempo de espera. Esto puede resolverse escalando el servidor o añadiendo recursos como CPU, RAM o almacenamiento.
- Problemas de red: también puede producirse un error de tiempo de espera si hay problemas con la conexión de red entre el cliente y el servidor. Esto se puede solucionar comprobando la conexión de red, comprobando las configuraciones del enrutador o del cortafuegos o reiniciando los componentes de la red.
- Problemas con el proxy o la pasarela: una pasarela o proxy que medie entre el cliente y el servidor también puede provocar un error de tiempo de espera. Esto se puede solucionar comprobando y ajustando la configuración del proxy o de la puerta de enlace.
- Aplicación o base de datos lenta: si una aplicación o base de datos se ejecuta lentamente, esto también puede provocar un error de tiempo de espera. Esto se puede solucionar optimizando la aplicación o la base de datos.
Para solucionar el problema, se pueden tomar las siguientes medidas:
- Compruebe el estado del servidor y asegúrese de que no está sobrecargado.
- Compruebe la conexión de red y asegúrese de que es estable y fiable.
- Compruebe la configuración de proxies o pasarelas y ajústela si es necesario.
- Optimice la aplicación o la base de datos para mejorar su rendimiento.
- Reiniciar los componentes de red o los servidores también puede ayudar a solucionar el problema.
En muchos casos, una combinación de estas medidas puede solucionar el problema.
Cómo crear su propia página de error para el código de estado 504
Apache Webserver
El servidor web "Apache" es uno de los más comunes en Internet. Para crear su propia página de error 504 Gateway Timeout en "Apache", se debe realizar el siguiente cambio en el siguiente archivo.
NGINX Webserver
Similar al servidor web "Apache", "NGINX" también se utiliza ampliamente en Internet. Para crear su propia página de error 504 Gateway Timeout en "NGINX", es necesario realizar el siguiente cambio en el siguiente archivo.
location = /504.html {
root /usr/share/nginx/html;
internal;
}
Compatibilidad del código de estado 504 con los navegadores
Chrome | no data |
Edge | no data |
Firefox | no data |
Opera | no data |
Safari | no data |
Chrome Android | no data |
Firefox for Android | no data |
Opera Android | no data |
Safari on iOS | no data |
Internet | no data |
WebView Android | no data |
Constantes en lenguajes de programación
HttpStatusCode.GatewayTimeout
http.StatusGatewayTimeout
Response::HTTP_GATEWAY_TIMEOUT
httplib.GATEWAY_TIMEOUT
http.client.GATEWAY_TIMEOUT
http.HTTPStatus.GATEWAY_TIMEOUT
:gateway_timeout