504

Gateway Timeout

Oficiālais
Vecāku serveris savlaicīgi neatbildēja.

Statusa koda 504 vispārīgs skaidrojums

Kļūda HTTP 504 Gateway Timeout rodas, kad serveris mēģina atbildēt uz klienta pieprasījumu, bet nespēj to izdarīt saprātīgā laikā. Šo kļūdu parasti dēvē par "vārteja laika ierobežojumu", jo tā bieži rodas, kad starpniekserveris vai vārteja, kas ir starpnieks starp klientu un serveri, nespēj izveidot savienojumu vai saņemt atbildi no servera. Tam var būt dažādi iemesli, piemēram, servera pārslodze, tīkla problēmas vai nepietiekama starpniekservera vai vārtejas konfigurācija.

.

HTTP statusa koda 504 specifikācija

504 Gateway Timeout statusa kods norāda, ka serveris, kas darbojas kā vārteja vai starpniekserveris, nav laikus saņēmis atbildi no augšupejošā servera, kuram tam bija nepieciešams piekļūt, lai izpildītu pieprasījumu.

Avots / citāts no: 504 Gateway Timeout HTTP statusa kods ir norādīts 6.6.5 sadaļā 6.6.5.

Kā, izmantojot PHP, ievadīt 504 statusa kodu?

Lai tīmekļa lapā norādītu HTTP statusa kodu 504, var izmantot PHP funkciju http_response_code. Sintakse ir šāda: http_response_code(504) (PHP 5 >= 5.4.0, PHP 7, PHP 8)

Pārbaudīt 504 HTTP statusa kodu

Lai klienta pusē varētu attēlot HTTP statusa kodu (šajā gadījumā 504 Gateway Timeout) un citu informāciju, ar F12 ir jāatver izstrādes konsole. Pēc tam dodieties uz cilni "Tīkls". Tagad lapu var atvērt, tīmekļa vietnei (piemērs index.php) jābūt redzamai tīkla cilnē. Tā ir jāizvēlas un pēc tam jāizvēlas sadaļa Herder. Pēc tam lietotājs redzēs šādu rezultātu:

Statusa kods 504 Gateway Timeout
Pārskats
URL: https://http-statuscode.com/errorCodeExample.php?code=504
Statuss: 504 Gateway Timeout
Šie: Network
IP adrese: XX.XX.XX.XX
Statusa kods 504 Gateway Timeout

Kā atrisināt problēmu ar 504 statusa kodu?

Ir vairāki iespējamie iemesli, kāpēc var rasties HTTP kļūda 504 Gateway Timeout "Gateway Timeout", piemēram:

  1. Servera pārslodze: Ja serveris saņem pārāk daudz pieprasījumu un nespēj uz tiem atbildēt saprātīgā laikā, var rasties laika ierobežojuma kļūda. To var atrisināt, palielinot servera mērogošanu vai pievienojot resursus, piemēram, CPU, RAM vai atmiņu.
  2. Tīkla problēmas: Laika nobīde var rasties arī tad, ja ir problēmas ar tīkla savienojumu starp klientu un serveri. To var novērst, pārbaudot tīkla savienojumu, pārbaudot maršrutētāja vai ugunsmūra konfigurāciju vai restartējot tīkla komponentus.
  3. Proxy vai vārtejas problēmas: Vārtejas vai proxy, kas ir starpnieks starp klientu un serveri, arī var izraisīt laika kavējuma kļūdu. To var novērst, pārbaudot un pielāgojot starpniekservera vai vārteja iestatījumus.
  4. Lēna lietojumprogramma vai datubāze: Ja lietojumprogramma vai datubāze darbojas lēni, tas arī var izraisīt laika kavējuma kļūdu. To var novērst, optimizējot lietojumprogrammu vai datubāzi.

Lai atrisinātu problēmu, var veikt šādus pasākumus:

  1. Pārbaudiet servera stāvokli un pārliecinieties, ka tas nav pārslogots.
  2. Pārbaudiet tīkla savienojumu un pārliecinieties, ka tas ir stabils un uzticams.
  3. Pārbaudiet starpniekservera vai vārtu konfigurāciju un, ja nepieciešams, pielāgojiet to.
  4. Optimizējiet lietojumprogrammu vai datubāzi, lai uzlabotu tās veiktspēju.
  5. Tīkla komponentu vai serveru restartēšana arī var palīdzēt novērst problēmu.

Daudzos gadījumos problēmu var atrisināt šo pasākumu kombinācija.

Kā izveidot savu kļūdas lapu statusa kodam 504

Gan ar Apache, gan NGINX tīmekļa serveriem ir salīdzinoši viegli izveidot savu 504 Gateway Timeout. kļūdas lapu.

Apache Webserver

Tīmekļa serveris "Apache" ir viens no visizplatītākajiem tīmekļa serveriem internetā. Lai "Apache" serverī izveidotu savu 504 Gateway Timeout. kļūdas lapu, šajā failā jāveic šādas izmaiņas.

File: .htaccess
ErrorDocument 504 /errors/504.html

NGINX Webserver

Līdzīgi kā tīmekļa serveris "Apache", arī "NGINX" tiek plaši izmantots internetā. Lai izveidotu savu 504 Gateway Timeout. kļūdas lapu "NGINX" serverī, ir jāveic šādas izmaiņas šajā failā.

File: sites-enabled/default
error_page 504 /504.html;
location = /504.html {
    root /usr/share/nginx/html;
    internal;
}

504 statusa koda saderība ar pārlūkprogrammu

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

Konstantes programmēšanas valodās

HttpStatusCode.GatewayTimeout
http.StatusGatewayTimeout
Response::HTTP_GATEWAY_TIMEOUT
httplib.GATEWAY_TIMEOUT
http.client.GATEWAY_TIMEOUT
http.HTTPStatus.GATEWAY_TIMEOUT
:gateway_timeout

Izklaidējošas memes par HTTP statusa kodu 504

Autors: Tony Brüser
Autors: Tony Brüser

Tonijs Brūsers ir aizrautīgs tīmekļa izstrādātājs, kurš aizraujas ar HTTP statusa kodiem.

LinkedInGitHub