Üldine selgitus 504 staatuskoodi kohta
HTP-viga 504 Gateway Timeout tekib siis, kui server üritab vastata kliendi päringule, kuid ei suuda seda mõistliku aja jooksul teha. Seda viga nimetatakse tavaliselt "gateway timeout'iks", sest see tekib sageli siis, kui kliendi ja serveri vahel vahendav proxy-server või gateway ei suuda ühendust luua või serverilt vastust saada. Sellel võivad olla erinevad põhjused, näiteks serveri ülekoormus, võrguprobleemid või proxy või gateway ebapiisav seadistamine.
.HTTP staatuskoodi 504 täpsustamine
Allikas / Tsitaat: HTTP-kood 504 Gateway Timeout on määratletud jaotises 6.6.5 jaotises RFC7231.
HTTP protokoll
Kuidas PHP-ga 504 staatuskoodi visata?
Veebilehel HTTP-koodi 504 kuvamiseks võib kasutada PHP-funktsiooni http_response_code. Süntaks on järgmine: http_response_code(504) (PHP 5 >= 5.4.0, PHP 7, PHP 8)
Testige HTTP-koodi 504
Selleks, et kuvada HTTP staatuskoodi (antud juhul 504 Gateway Timeout) ja muud teavet kliendi poolel, tuleb arenduskonsool avada klahviga F12. Seejärel navigeerige vahekaardile "Network". Nüüd saab lehekülje avada, veebileht (näiteks index.php) peaks olema nähtav võrgu vahekaardil. See tuleb valida ja seejärel tuleb valida Herder sektsioon. Seejärel näeb kasutaja järgmist tulemust:
URL: https://http-statuscode.com/errorCodeExample.php?code=504
Staatus: 504 Gateway Timeout
Need: Network
IP-aadress: XX.XX.XX.XX
Kuidas lahendada probleem 504 staatuskoodiga?
Võimalikke põhjusi, miks võib tekkida HTTP-viga 504 Gateway Timeout "Gateway Timeout", on mitu:
- Serveri ülekoormus: Kui server saab liiga palju päringuid ja ei suuda neile mõistliku aja jooksul vastata, võib tekkida timeout-viga. Seda saab lahendada serveri skaleerimisega või ressursside, näiteks protsessori, RAM-i või mälu lisamisega.
- Võrguprobleemid: Ajakatkestuse viga võib tekkida ka siis, kui kliendi ja serveri vahelises võrguühenduses on probleeme. Seda saab parandada võrguühenduse kontrollimisega, ruuteri või tulemüüri konfiguratsioonide kontrollimisega või võrgukomponentide taaskäivitamisega.
- Proxy või värava probleemid: Kliendi ja serveri vahel vahendav värav või proxy võib samuti põhjustada aja ületamise viga. Seda saab parandada, kontrollides ja kohandades proxy või värava seadistusi.
- Hiline rakendus või andmebaas: Kui rakendus või andmebaas töötab aeglaselt, võib ka see põhjustada aja ületamise viga. Seda saab parandada rakenduse või andmebaasi optimeerimisega.
Probleemi lahendamiseks võib võtta järgmisi meetmeid:
- Kontrollige serveri olekut ja veenduge, et see ei ole ülekoormatud.
- Kontrollige võrguühendust ja veenduge, et see on stabiilne ja usaldusväärne.
- Kontrollige proxyde või väravate konfiguratsiooni ja vajadusel kohandage seda.
- Optimeerige rakendus või andmebaas, et parandada selle jõudlust.
- Võrgu komponentide või serverite taaskäivitamine võib samuti aidata probleemi lahendada.
Monetel juhtudel võib probleemi lahendada nende meetmete kombinatsioon.
Kuidas luua oma vealehekülg staatuskoodi 504 jaoks
Apache Webserver
Veebiserver "Apache" on üks levinumaid veebiservereid Internetis. Oma 504 Gateway Timeout vealehe loomiseks "Apache'is" tuleb teha järgmine muudatus järgmises failis.
NGINX Webserver
Sarnaselt veebiserverile "Apache" on ka "NGINX" internetis laialdaselt kasutusel. Oma 504 Gateway Timeout vealehe loomiseks "NGINXis" tuleb teha järgmine muudatus järgmises failis.
location = /504.html {
root /usr/share/nginx/html;
internal;
}
504 staatuskoodi brauserite ühilduvus
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 |
Konstandid programmeerimiskeeltes
HttpStatusCode.GatewayTimeout
http.StatusGatewayTimeout
Response::HTTP_GATEWAY_TIMEOUT
httplib.GATEWAY_TIMEOUT
http.client.GATEWAY_TIMEOUT
http.HTTPStatus.GATEWAY_TIMEOUT
:gateway_timeout