Cum să remediați eroarea 504 Gateway Timeout pe site-ul dvs. WordPress

Publicat: 2020-10-26

Eroarea 504 Gateway Timeout este una dintre cele mai frecvente erori HTTP 5xx cu care se confruntă proprietarii și vizitatorii site-ului. Pentru multe bloguri WordPress și platforme de comerț electronic, a ști cum să remediați erorile de server ca aceasta este esențială pentru a-i împiedica pe vizitatorii lor câștigați din greu să treacă pe site-urile concurenței.

Deoarece eroarea 504 Gateway Timeout nu vă spune de ce a apărut, este greu de identificat ce cauzează expirarea serverului. Acest articol vă va ajuta să îl înțelegeți în detaliu, să aflați cum să îi diagnosticați cauza și apoi să o remediați.

După ce ai încercat toate diferitele soluții menționate în postare, site-ul tău ar trebui să funcționeze în cel mai scurt timp.

Sună interesant? Să ne scufundăm!

Preferiți să vizionați versiunea video?

Eroarea 504 Gateway Timeout este una dintre cele mai frecvente erori HTTP 5xx cu care se confruntă proprietarii și vizitatorii site-ului. Aflați cum să o remediați rapid cu acest ghid. Faceți clic pentru a trimite pe Tweet

Ce este eroarea 504 Gateway Timeout?

De fiecare dată când vizitați un site web în browser, acesta trimite o solicitare către serverul web unde este găzduit site-ul. Serverul procesează cererea și răspunde cu resursele solicitate.

Ilustrație a modului în care funcționează cererile și răspunsurile HTTP
Cum funcționează cererile și răspunsurile HTTP.

Răspunsul serverului include unul dintre multele coduri de stare HTTP pentru a indica starea răspunsului către browser. Dar nu toate aceste coduri de stare HTTP sunt erori. De exemplu, un cod de stare 200 OK înseamnă că serverul a procesat cererea cu succes și „Totul este OK”.

Clasa 5xx de coduri de stare HTTP indică faptul că ceva nu este în regulă cu serverul, serverul este conștient de acest lucru și nu poate îndeplini cererea clientului. Drept urmare, acestea sunt denumite și coduri de stare Server Error 5xx .

Oficial, cinci coduri de stare sunt specificate în clasa 5xx (500, 501, 502, 503, 504). Este posibil să găsiți și multe coduri neoficiale (506, 507, 509, 520 etc.).

Internet Engineering Task Force (IETF) definește eroarea 504 Gateway Timeout ca:

Codul de stare 504 (Gateway Timeout) indică faptul că serverul, deși acționa ca gateway sau proxy, nu a primit un răspuns în timp util de la un server din amonte pe care trebuia să-l acceseze pentru a finaliza cererea.

Pentru a simplifica și mai mult, această eroare apare atunci când două servere sunt implicate în procesarea unei cereri. Primul server (de obicei, serverul principal) expiră, așteptând un răspuns de la al doilea server (server din amonte).

Eroarea 504 Gateway Timeout se manifestă sub diferite forme. Iată câteva moduri în care apare de obicei:

EROAREA HTTP 504 în browserul Chrome
„HTTP ERROR 504” din browserul Chrome.

Eroarea 504 Gateway Timeout este similară cu eroarea 502 Bad Gateway, care indică faptul că primul server a primit un răspuns nevalid de la al doilea server (server din amonte).

Codul de stare 504 GATEWAY TIMEOUT în Chrome DevTools
Codul de stare „504 GATEWAY TIMEOUT” din Chrome DevTools.

Variații ale erorii 504 Gateway Timeout

Browserul afișează orice eroare 504 Gateway Timeout în interiorul său, la fel ca orice altă eroare. Deoarece există diverse sisteme de operare, servere web, browsere și agenți de utilizator, acesta poate apărea în mai multe moduri.

Mai jos sunt câteva variante obișnuite ale mesajelor de eroare 504 pe care le puteți întâlni:

  • 504 Gateway Timeout
  • 504 Gateway Timeout NGINX
  • NGINX 504 Gateway Timeout
  • Eroare de expirare a gateway-ului
  • Eroare 504
  • Eroare HTTP 504
  • Eroare HTTP 504 — Timeout Gateway
  • HTTP 504
  • 504 Eroare
  • Timeout Gateway (504)
  • Această pagină nu funcționează — Domeniul a durat prea mult să răspundă
  • 504 Gateway Time-out — Serverul nu a răspuns la timp
  • Solicitarea paginii a fost anulată, deoarece a durat prea mult pentru finalizare
  • Vizitatorii site-ului: a apărut o problemă la deservirea solicitării dvs., vă rugăm să încercați din nou peste câteva minute.
  • Proprietari de site: a existat un timeout pentru gateway. Ar trebui să vizitați jurnalul de erori pentru mai multe informații.
  • Un ecran alb gol

Toate răspunsurile de eroare de mai sus, deși formulate diferit, indică aceeași eroare de server 504 Gateway Timeout.

Serverele web și site-urile web pot personaliza modul în care afișează utilizatorilor eroarea 504 Gateway Timeout. Unele dintre ele pot fi cool! Este o tactică excelentă pentru a potoli dezamăgirea vizitatorilor.

Pagina de eroare HTTP 504 personalizată a GitHub
Pagina de eroare HTTP 504 personalizată a GitHub.

Impactul SEO al erorii 504 Gateway Timeout

Toate erorile 5xx împiedică încărcarea unei pagini web, făcându-le dăunătoare experienței utilizatorului. Prin urmare, motoarele de căutare precum Google iau aceste erori în serios. Dacă eroarea persistă pentru o perioadă lungă de timp, poate duce chiar la deindexarea paginii web din rezultatele motorului de căutare.

De exemplu, când păianjenii Google dau peste o eroare 503 Serviciu indisponibil, ei vor înțelege că este o problemă temporară, deoarece este folosită în principal pentru a activa modul de întreținere a site-ului. Astfel, vor încerca să acceseze cu crawlere pagina din nou mai târziu.

O eroare 504 Gateway Timeout nu este neapărat temporară, deoarece se poate datora mai multor motive. Dacă site-ul dvs. este oprit pentru doar câteva minute și dacă păianjenii încearcă să îl acceseze cu crawlere de mai multe ori în fiecare minut, vor încerca să difuzeze pagina din memoria cache. Nici nu ar observa.

Dar dacă site-ul dvs. este oprit mai mult de 6 ore sau mai mult, atunci Google va considera eroarea 504 drept o problemă serioasă la nivelul întregului site pe care trebuie să o remediați cât mai curând posibil. Acest lucru vă poate afecta negativ SEO.

Vizualizarea erorilor de accesare cu crawlere în Google Search Console
Vizualizarea erorilor de accesare cu crawlere în Google Search Console

Google Search Console este unul dintre cele mai bune instrumente SEO pentru a monitoriza erorile HTTP 5xx ale site-ului dvs. web.

Cauzele erorii 504 Gateway Timeout

Deoarece eroarea 504 se datorează unui timeout între servere, problema probabil nu este cu dispozitivul clientului sau conexiunea la internet. Aceasta include, de asemenea, dispozitivul și conexiunea.

O eroare 504 Gateway Timeout indică faptul că serverul web așteaptă prea mult timp să răspundă de la alt server și „expiră timpul”. Pot exista multe motive pentru acest timeout: celălalt server nu funcționează corect, este supraîncărcat sau este oprit.

Celălalt server nu trebuie să fie întotdeauna extern (de exemplu, CDN, gateway API). Poate fi, de asemenea, o entitate asemănătoare unui server în cadrul serverului web principal (de exemplu, server proxy invers, server de bază de date).

Cum să remediați eroarea 504 Gateway Timeout

Fără a cunoaște detaliile exacte despre site-ul WordPress, cum ar fi configurația serverului, planul de găzduire, pluginurile terțelor părți și traficul pe care îl atrage, s-ar putea să vă fie frustrant și copleșitor să remediați o eroare 504 Gateway Timeout.

Deoarece sunt implicate multe variabile, vă recomand să începeți prin a remedia problemele de pe partea clientului, care sunt destul de rare, și apoi să treceți la rezolvarea problemelor de pe partea serverului. De obicei, ei sunt vinovați cu erori 504.

Încercați să reîncărcați pagina web

Unul dintre primele lucruri pe care le puteți încerca când întâmpinați o eroare 504 Gateway Timeout este să așteptați câteva minute și să încercați să reîncărcați pagina.

Puteți apăsa comanda rapidă de la tastatură F5 pentru a reîmprospăta/reîncărca pagina web în majoritatea browserelor. Pentru a elimina memoria cache a browserului paginii înainte de reîncărcare, puteți apăsa în schimb combinația de comenzi rapide CTRL+F5 .

Reîmprospătarea unei pagini web în browserul Chrome
Reîmprospătarea unei pagini web în browserul Chrome

În timp ce sunteți la asta, puteți încerca și să încărcați site-ul într-un browser diferit pentru a exclude asta ca o problemă. Deoarece majoritatea erorilor 504 se datorează serverelor supraîncărcate temporar, utilizarea acestei soluții ar trebui să facă site-ul dvs. să revină imediat.

Dacă așteptarea și reîncărcarea site-ului nu rezolvă problema de eroare 504, puteți verifica dacă un site este oprit pentru toată lumea sau doar pentru dvs. Două instrumente online utile pentru a testa un site pentru timpul de nefuncționare sunt Down for Everyone sau Just Me și Is It Down Right Now?

Testarea Kinsta.com pe Down for Everyone sau doar pentru mine
Testarea Kinsta.com pe Down for Everyone sau doar pentru mine

Reporniți dispozitivele de rețea

Uneori, problemele cu dispozitivele de rețea, cum ar fi modemul sau routerul, pot duce la o eroare 504 Gateway Timeout. Repornirea acestor dispozitive vă poate ajuta să remediați problema.

Deși puteți opri toate aceste dispozitive de rețea în orice ordine, ordinea în care le porniți din nou este importantă. De obicei, porniți aceste dispozitive din „exterior în interior”, urmând ordinea de conectare de la furnizorul de servicii de internet la dispozitivul client principal.

Verificați setările dvs. proxy

Un server proxy se află între dispozitivul dvs. și internet. Este folosit mai ales pentru a îmbunătăți confidențialitatea online prin ascunderea informațiilor private (de exemplu, locația dispozitivului) de pe site-uri web și servere web (de exemplu, folosind un VPN).

Deși este rar ca serverele proxy să provoace o eroare 504, setările incorecte ale serverului proxy pot fi uneori motivul. Puteți dezactiva serverul proxy și încercați să reîncărcați pagina web pentru a vedea dacă va remedia eroarea.

Modificarea setărilor „Proxy” în Windows 10
Modificarea setărilor „Proxy” în Windows 10

Majoritatea clienților nu folosesc un serviciu proxy, așa că puteți sări peste acest pas dacă sunteți sigur că nu utilizați niciun server proxy. Cu toate acestea, s-ar putea să-l fi setat fără să știi despre asta. Vă sugerez să verificați setările proxy ale dispozitivului și ale browserului pentru a exclude această cauză.

Probleme DNS

O eroare 504 Gateway Timeout poate fi cauzată și de problemele DNS de pe partea serverului sau pe partea client (sau ambele).

Cel mai probabil motiv pentru o problemă DNS la nivelul serverului este FQDN (nume de domeniu complet calificat) care nu rezolvă adresa IP corectă sau serverul DNS nu răspunde . De obicei, acest lucru se întâmplă atunci când tocmai ați migrat site-ul dvs. WordPress pe un nou server sau gazdă. Prin urmare, este important să așteptați ca înregistrările DNS ale domeniului să se propagă complet, ceea ce poate dura până la 24 de ore.

Puteți folosi instrumente gratuite precum whatsmydns.net DNS Checker sau DNSMap pentru a vedea dacă DNS-ul dvs. s-a propagat pe tot globul.

Verificarea propagării DNS pentru domeniul dvs. pe whatsmydns.net
Verificarea propagării DNS pentru domeniul dvs. pe whatsmydns.net

Pentru a remedia problemele DNS la nivelul clientului, puteți încerca să vă ștergeți memoria cache DNS locală. Este ca și cum ați șterge memoria cache a browserului, cu excepția cazului în care ștergeți memoria cache DNS din sistemul de operare.

Dacă utilizați Windows, puteți goli memoria cache DNS deschizând linia de comandă și introducând următoarea directivă:

 ipconfig /flushdns
Golirea memoriei cache DNS cu promptul de comandă
Spălați memoria cache DNS cu promptul de comandă în Windows

Ar trebui să vedeți „S-a golit cu succes Cache-ul rezolutorului DNS”. mesaj dacă a funcționat.

Pentru cele mai recente versiuni de macOS, puteți deschide Terminalul și rula următoarea comandă:

 sudo killall -HUP mDNSResponder

Nu veți vedea nicio notificare în macOS când procesul se termină, dar o puteți modifica adăugând comanda cu mesajul personalizat.

 sudo killall -HUP mDNSResponder; DNS Cache was cleared successfully

Dacă utilizați versiuni mai vechi de macOS, comanda pe care trebuie să o introduceți variază în funcție de versiunea de macOS pe care o rulați. Pentru mai multe detalii, puteți consulta secțiunea macOS din tutorialul aprofundat de spălare DNS al Kinsta.

Dacă utilizați sistemul de operare Linux, atunci procesul este destul de similar cu macOS, deoarece chiar și Linux folosește Terminalul ca interfață de linie de comandă. Deoarece există multe distribuții Linux, comanda exactă pe care trebuie să o rulați poate varia de la o distribuție la alta. Puteți consulta ghidul Kinsta pentru mai multe informații.

În cele din urmă, puteți schimba temporar serverele DNS de pe partea clientului. În mod implicit, ISP-ul dvs. vă atribuie automat serverele DNS. Dar le puteți schimba temporar în IP-uri DNS publice.

Unele servere DNS de încredere pe care le puteți încerca sunt Google Public DNS, Cloudflare 1.1.1.1, Quad9 DNS și Cisco OpenDNS.

Setări personalizate servere DNS în Windows 10
Setări personalizate servere DNS în Windows 10

Dezactivați temporar CDN-ul site-ului dvs

Uneori, problema ar putea fi și cu rețeaua de livrare a conținutului (CDN). Dacă serverul de origine al unui site nu este accesibil, majoritatea CDN-urilor vor încerca să difuzeze întreaga pagină web din memoria cache.

Dar majoritatea CDN-urilor nu activează această caracteristică în mod implicit, deoarece este complex să memorezi în cache activele dinamice pe majoritatea site-urilor (de exemplu, tabloul de bord WordPress).

Setarea regulii de pagină „Cache Everything” în Cloudflare
Setarea regulii de pagină „Cache Everything” în Cloudflare

O modalitate simplă de a remedia această problemă este dezactivarea temporară a CDN-ului. De exemplu, dacă utilizați pluginul gratuit CDN Enabler WordPress pentru a vă conecta activele site-ului la adresele URL CDN, atunci puteți dezactiva pluginul și testați reîncărcarea site-ului.

Același lucru este valabil și pentru utilizarea oricărui alt plugin pe care îl puteți utiliza pentru a vă conecta la CDN (de exemplu, WP Rocket, Breeze, W3 Total Cache).

Dacă nu puteți accesa tabloul de bord de administrare al site-ului dvs., puteți dezactiva pluginul prin SFTP redenumind numele folderului pluginului.

Dezactivați toate pluginurile prin SFTP redenumind numele folderului de pluginuri
Dezactivați toate pluginurile prin SFTP redenumind numele folderului de pluginuri

CDN-urile precum Cloudflare sau Sucuri, care oferă servicii proxy complete, au firewall-uri suplimentare între serverele lor edge și serverul dvs. de origine. Prin urmare, este posibil să întâlniți mai des erori HTTP 5xx în timp ce le utilizați. Cele mai multe dintre ele memorează în cache erorile 5xx returnate de serverul de origine, astfel încât este ușor să le depanați.

Planul gratuit al Cloudflare este predispus să arate o eroare 5xx. Din păcate, deoarece este un serviciu proxy complet, nu există o modalitate rapidă de a-l dezactiva. Dar înainte de a da vina pe Cloudflare pentru asta, știți că Cloudflare arată două variante ale erorii 504 Gateway Timeout.

504 Gateway Timeout la Cloudflare (varianta 1)

Cloudflare vă va afișa un ecran personalizat de eroare 504 Gateway Timeout când serverul de origine al site-ului dvs. răspunde cu un răspuns standard HTTP 504.

Ecranul personalizat de eroare 504 al Cloudflare
Ecranul personalizat de eroare 504 al Cloudflare

Aici, problema ține de serverul dvs. web și nu de Cloudflare. Puteți încerca să o remediați cu celelalte soluții menționate mai jos sau să contactați asistența furnizorului dvs. de găzduire pentru ajutor tehnic.

504 Gateway Timeout la Cloudflare (varianta 2)

Dacă Cloudflare provoacă eroarea 504 Gateway Timeout, ecranul de eroare va menționa „cloudflare”, care este în prezent numele standard de server pentru toate activele Cloudflare. De obicei, ecranul de eroare va apărea după cum urmează:

Eroare 504 Gateway Timeout cauzată de Cloudflare
Ecran de eroare pentru 504 Gateway Timeout cauzat de Cloudflare

Deoarece Cloudflare în sine nu răspunde, nu veți vedea niciun ecran de eroare cu marca Cloudflare aici.

Cel mai probabil, Cloudflare este deja conștient de problemă și lucrează deja la o remediere. Puteți confirma acest lucru verificând pagina web Starea sistemului Cloudflare. Alternativ, puteți lua legătura cu suportul Cloudflare pentru o rezoluție mai rapidă.

Verificați starea sistemului Cloudflare la cloudflarestatus.com
Verificați starea sistemului Cloudflare la cloudflarestatus.com

504 Gateway Timeout la Cloudflare din cauza încărcărilor mari

Dimensiunea încărcărilor dvs. pe site-ul dvs. poate fi, de asemenea, un motiv pentru expirarea timpului serverului. Cloudflare limitează dimensiunea fișierului de încărcare (pe cerere HTTP POST) la doar 100 MB atât în ​​planul Free, cât și în cel Pro.

Limitele „Dimensiunea maximă de încărcare” Cloudflare pentru diferite planuri
Limitele „Dimensiunea maximă de încărcare” ale Cloudflare pentru diferite planuri

Problema poate fi din partea gazdei dvs. sau cu Cloudflare. Puteți afla cauza exactă ocolind Cloudflare cu fișierul DNS hosts și încercând încărcarea din nou.

Dacă utilizați Cloudflare cu WordPress, vă recomand să utilizați pluginul lor gratuit și să excludeți adresele URL critice din cache (cum ar fi tabloul de bord de administrare WordPress). Puteți consulta postarea detaliată a Kinsta despre cum să configurați setările Cloudflare pentru WordPress.

Lectură sugerată: Cum să configurați Cloudflare APO pentru WordPress.

Probleme cu serverul (consultați gazda)

Problemele de server sunt unul dintre cele mai frecvente motive pentru care se confruntă cu o eroare 504 Gateway Timeout. Deoarece majoritatea site-urilor WordPress sunt găzduite pe serverele web Nginx sau Apache, Nginx sau Apache așteaptă un răspuns de la ceva și expiră.

Mulți clienți vin la Kinsta pentru exact această problemă cu care se confruntă la alte gazde WordPress. Conversația decurge cam așa:

Primim aproximativ 100.000 de vizitatori pe lună, cu peste 200.000 de vizualizări. În prezent, găzduim cu ____ și întâmpinăm erori 504 în mod constant din cauza supraîncărcării serverului. Nu-mi place cum ____ a gestionat problema și am fost, de asemenea, sfătuiți că va trebui să trecem la planurile lor dedicate în curând, ceea ce cred că nu este necesar.

Site-urile cu trafic mare și comerțul electronic sunt mai predispuse la erori 504 din cauza supraîncărcării serverului, deoarece generează multe solicitări care nu pot fi stocate în cache. Cu toate acestea, această problemă poate fi decupată cu orice site, inclusiv cu bloguri simple. Multe gazde vă vor cere să faceți upgrade la un plan de nivel înalt pentru a remedia problema, care în cele mai multe cazuri este inutilă.

Kinsta folosește gazde gestionate LXD și containere software LXC orchestrate pentru fiecare site. Astfel, fiecare site WordPress este găzduit în propriul container izolat, cu acces la tot software-ul necesar pentru a-l rula (Linux, Nginx, PHP, MySQL). Resursele sunt 100% private și nu sunt partajate cu niciun alt site, nici măcar cu site-urile dvs.

Majoritatea gazdelor WordPress care oferă planuri de găzduire partajată nu au această capacitate. Prin urmare, un site cu trafic ridicat găzduit pe același server cu al dvs. poate provoca și site-ul dvs. să afișeze o eroare 504.

Pe lângă izolarea fiecărui site în containerul său, Kinsta și-a proiectat și infrastructura pentru a gestiona cu ușurință mii de conexiuni simultane. Kinsta chiar găzduiește bazele de date MySQL la localhost, nu un server la distanță. Aceasta înseamnă că nu există latență între mașini, ceea ce duce la interogări mai rapide și mai puține șanse de apariție a timeout-urilor.

Mulți clienți care migrează la Kinsta văd scăderi uriașe ale timpilor de încărcare.

O creștere de 212,5% a performanței după trecerea la C2.
O creștere de 212,5% a performanței după trecerea la C2.

Un server supraîncărcat nu este singura cauză a unui timeout de server. Pot exista multe alte motive pentru eroarea 504:

Infrastructură de server lentă

Serverul pe care îl utilizați pentru a găzdui site-ul dvs. WordPress poate să nu aibă suficiente resurse pentru a gestiona încărcarea. Este ca și cum ai juca un joc video modern, cu grafică intensivă, pe un computer vechi de un deceniu.

Serverul închide doar încercând să servească site-ul web. Singura soluție la această problemă este să faceți upgrade la un server cu o infrastructură mai bună. Din acest motiv, chiar și cel mai simplu plan de găzduire WordPress al Kinsta se va ocupa de un site static cu trafic mediu.

Are nevoie de mai mulți lucrători PHP

Lucrătorii PHP sunt folosiți pentru a executa codul site-ului dvs. WordPress. Un site de comerț electronic care primește 50.000 de vizitatori pe lună are nevoie de mult mai multe resurse decât un simplu blog cu aceeași cantitate de trafic. Dacă toți lucrătorii PHP ai serverului sunt ocupați, vor forma o coadă.

Când coada devine prea mare, serverul ignoră cererile vechi, ceea ce poate provoca ca serverul să producă o eroare de gateway 504. Puteți să vă întrebați gazda despre creșterea numărului de lucrători PHP. Acest lucru va permite site-ului dvs. să execute mai multe solicitări simultan.

Probleme cu firewall

Firewall-ul serverului dvs. ar putea avea unele erori sau o configurație necorespunzătoare. Poate că câteva dintre regulile sale împiedică serverul să stabilească o conexiune corectă. Pentru a ști dacă firewall-ul tău este vinovat, poți verifica jurnalele de erori ale serverului tău.

Probleme de conectivitate la rețea

Problemele de conectivitate dintre serverul proxy și serverul web pot cauza întârzieri în răspunsul la solicitările HTTP. Dacă utilizați un echilibrator de încărcare, ar putea exista și probleme de conectivitate la rețea cu acesta.

Timeouts HTTP

Timeout-urile HTTP pot apărea atunci când o conexiune între serverul web și client este menținută deschisă prea mult timp. Cu site-urile WordPress, acest lucru se întâmplă de obicei atunci când rulează importuri WordPress. O modalitate de a rezolva această problemă este trecerea la o conexiune la internet mai rapidă.

De asemenea, puteți utiliza un instrument cu suport pentru WP-CLI pentru a rula scripturile direct pe server, ocolind complet conexiunea HTTP. De exemplu, puteți utiliza comanda wp import WP-CLI pentru a rula pluginul WordPress Importer direct prin interfața de linie de comandă.

Important: erorile 504 Gateway Timeout arată similar cu erorile 503 Service Unavailable sau 502 Erori Gateway Bad. Dar toate sunt diferite. Dacă întâmpinați o eroare 504 la Kinsta, deschideți un bilet de asistență pentru a rezolva problema imediat.

Pentru a monitoriza pe cont propriu timpul de nefuncționare a site-ului dvs., puteți utiliza un instrument precum updown.io. Acesta va verifica periodic starea site-ului dvs. (sau orice adresă URL) trimițându-i o solicitare HTTP. Puteți seta frecvența de verificare de la 15 secunde la 1 oră. Dacă site-ul dvs. web nu răspunde corect, vă va anunța printr-un e-mail sau un SMS.

Monitorizați-vă site-ul web cu updown.io
Monitorizați-vă site-ul cu ușurință cu updown.io

Veți primi o cantitate generoasă de credite gratuite cu fiecare cont de updown.io, dar dacă sunteți în căutarea unor alternative mai ieftine, puteți verifica WebGazer sau UptimeRobot. Ambele instrumente vă vor ajuta să monitorizați gratuit timpul de funcționare al site-ului dvs. la fiecare 5 minute. Este suficient de decent pentru majoritatea proprietarilor de site-uri web.

Tabloul de bord al instrumentului de monitorizare a site-ului WebGazer
Tabloul de bord al instrumentului de monitorizare a site-ului WebGazer

Monitorizarea site-ului dvs. vă va oferi o idee despre cât de des este în jos. Acest lucru este util în special dacă utilizați un furnizor de găzduire partajată. Majoritatea gazdelor WordPress gestionate se ocupă automat de acest lucru pentru tine. Prin urmare, este întotdeauna recomandat să mergeți cu ei.

Pentru o explicație detaliată, consultați postarea Kinsta despre importanța găzduirii WordPress gestionate.

Spam, roboți sau atacuri DDoS

Atacatorii rău intenționați pot aduce serverul dvs. web la accesare cu crawlere trimițând prea multe solicitări și/sau consumatoare de resurse. Dacă site-ul dvs. este spam de roboți sau este supus unui atac DDoS, acesta vă poate copleși serverul și poate duce la erori 504 Gateway Timeout pentru mulți utilizatori autentici.

Puteți să vă uitați la traficul serverului dvs. și la analize pentru a vedea dacă puteți observa modele neregulate în traficul site-ului. Dacă utilizați Kinsta pentru a vă găzdui site-ul, puteți vizualiza aceste date cu ușurință accesând tabloul de bord MyKinsta Analytics.

Tabloul de bord MyKinsta Analytics
Tabloul de bord MyKinsta Analytics

Începeți-vă investigația uitându-vă la cele mai importante adrese IP ale clienților. Vă va oferi o idee despre cine generează numărul maxim de solicitări și de unde. Dacă serverul dvs. utilizează brusc o lățime de bandă enormă sau atrage mult trafic, atunci acest raport va fi foarte util.

Vizualizarea „Top Client IP-uri” în tabloul de bord MyKinsta
Vizualizarea „Top Client IP-uri” în tabloul de bord MyKinsta

Apoi, puteți consulta raportul Analiza cache . Aici, puteți vedea câte solicitări ocolesc sau lipsesc memoria cache sau sunt servite din cache. Din motive de performanță și stabilitate, doriți să stocați în cache cât mai multe solicitări posibil, dar nu este întotdeauna posibil să realizați asta.

De exemplu, site-urile WooCommerce generează multe solicitări care nu pot fi stocate în cache pentru funcții precum coșul de cumpărături și procesul de plată.

Ecranul „Analiza cache” din MyKinsta
Ecranul „Analiza cache” din MyKinsta

În cele din urmă, puteți utiliza un plugin de securitate WordPress pentru a spori securitatea site-ului dvs. web prin identificarea și blocarea traficului/IP-urilor îngrijorătoare. Puteți cere gazdei dvs. să blocheze și anumite IP-uri.

Te lupți cu timpii de nefuncționare și problemele WordPress? Kinsta este soluția de găzduire concepută având în vedere performanță și securitate! Verificați planurile noastre

În funcție de lungimea și amploarea atacului, acesta ar putea fi un proces fără sfârșit de includere a IP-urilor pe lista neagră, deoarece mulți atacatori își schimbă IP-urile și adresele proxy după ce au fost blocați.

Notă: Kinsta nu permite clienților săi să instaleze pluginuri de securitate WordPress, deoarece acestea pot avea un efect uriaș asupra performanței site-ului, în special asupra capacităților sale de scanare. Deoarece Kinsta folosește instrumente de echilibrare a încărcăturii cu Google Cloud Platform, blocarea IP-urilor nu ar funcționa întotdeauna așa cum s-a prevăzut.

Puteți folosi soluții de securitate dedicate, cum ar fi Cloudflare sau Sucuri, pentru a vă proteja site-urile de atacurile DDoS și spamboți. Pentru mai multe, puteți consulta articolele Kinsta despre cum să instalați Cloudflare pe site-ul dvs. WordPress și despre cum Sucuri a ajutat să oprească un atac DDoS.

Bază de date WordPress coruptă

Uneori, o eroare 504 Gateway Timeout poate fi din cauza unei baze de date corupte, în special în site-urile WordPress. De obicei, acest lucru se datorează tabelelor sau fișierelor de baze de date corupte. Uneori, poate fi cauzată și de o problemă gravă de securitate, cum ar fi piratarea site-ului sau a bazei de date.

Repararea unei baze de date WordPress corupte depinde de problemă. Pluginurile precum WP-DBManager facilitează diagnosticarea problemelor bazei de date și repararea acestora. Vă recomand să citiți procedura detaliată a Kinsta despre repararea problemelor bazei de date WordPress pentru a începe.

Verificați pluginurile și temele site-ului dvs

În majoritatea cazurilor, pluginurile și temele terță parte nu provoacă erori 504. Dar există o mică șansă ca acestea să provoace expirări ale serverului, de obicei prin plasarea în coadă a multor solicitări necache generate de plugin/temă. Deoarece acest lucru leagă mulți dintre lucrătorii PHP ai serverului dvs., poate provoca erori 504.

Un exemplu excelent al acestei probleme este WooCommerce, un plugin instalat pentru a adăuga funcționalități de comerț electronic pe site-urile WordPress.

Cel mai simplu mod în care puteți remedia această problemă este dezactivarea tuturor pluginurilor. Amintiți-vă, nu veți pierde nicio dată dacă doar dezactivați un plugin.

Dacă vă puteți accesa tabloul de bord de administrare, puteți accesa ecranul Pluginuri , selectați Dezactivare din meniul de acțiuni în bloc, bifați toate pluginurile și apoi apăsați butonul Aplicați . Acest lucru va dezactiva toate pluginurile dvs.

Dezactivați pluginurile în WordPress
Dezactivarea tuturor pluginurilor WordPress prin tabloul de bord WP admin

Dacă nu vă puteți accesa zona de administrare, puteți dezactiva pluginurile prin SFTP utilizând metoda descrisă anterior. Doar redenumiți numele folderului principal al pluginurilor pentru a dezactiva toate pluginurile în bloc.

După ce ați dezactivat toate pluginurile, verificați dacă site-ul dvs. se încarcă corect. Dacă funcționează, trebuie să activați fiecare plugin, testând site-ul după activarea fiecărui plugin.

În cele din urmă, asigurați-vă că pluginurile, temele și nucleul WordPress sunt actualizate. De asemenea, asigurați-vă că serverul dumneavoastră rulează versiunea recomandată de PHP.

Dacă simțiți că acest lucru este prea copleșitor, puteți oricând să contactați gazda pentru ajutor. Kinsta folosește Kinsta APM și alte tehnici de depanare pentru a ajuta clienții să restrângă ce plugin, interogare sau script ar putea cauza eroarea.

În cel mai rău caz, cum ar fi o interogare ineficientă sau un cod prost într-un plugin/temă, puteți chema un dezvoltator WordPress pentru a remedia problema.

Verificați jurnalele de erori

Vizualizarea jurnalelor de erori poate fi foarte utilă atunci când depanați și depanați erorile 504 de pe site-ul dvs. WordPress. Acest lucru vă poate ajuta să restrângeți rapid o problemă de pe site-ul dvs., mai ales dacă este rezultatul unui plugin solicitant pe site-ul dvs.

Dacă sunteți client Kinsta, puteți vedea cu ușurință erorile în vizualizatorul de jurnal din tabloul de bord MyKinsta.

Verificarea jurnalelor de erori în tabloul de bord MyKinsta
Verificarea jurnalelor de erori în tabloul de bord MyKinsta

Dacă gazda dvs. nu are un instrument de înregistrare, atunci puteți activa modul de depanare WordPress adăugând următorul cod în fișierul wp-config.php :

 define( 'WP_DEBUG', true ); define( 'WP_DEBUG_LOG', true ); define( 'WP_DEBUG_DISPLAY', false );

Constanta WP_DEBUG activează sau dezactivează modul de depanare WordPress. Are două constante opționale însoțitoare care își pot extinde caracteristicile. Constanta WP_DEBUG_LOG direcționează ca toate erorile să fie salvate într-un fișier debug.log din directorul /wp-content/ . Dacă nu vedeți acest fișier, puteți oricând să creați unul.

Constanta WP_DEBUG_DISPLAY controlează dacă jurnalele de depanare apar pe pagina HTML. Setarea acestei opțiuni la fals va ascunde toate erorile, dar le puteți examina mai târziu, deoarece ați definit și WP_DEBUG_LOG ca adevărat.

Important: Dacă aveți WP_DEBUG activat în mediul Kinsta, va direcționa toate erorile către fișierul debug.log și nu către error.log din tabloul de bord MyKinsta.

De asemenea, puteți descărca fișierele jurnal de erori brute WordPress prin SFTP. De obicei, puteți găsi jurnalele de erori în directorul rădăcină al serverului dvs. într-un folder numit „jurnal”.

Accesarea folderului jurnal de erori WordPress prin SFTP
Accesarea folderului jurnal de erori WordPress prin SFTP

Utilizatorii Kinsta pot activa și modul de depanare WordPress din tabloul de bord MyKinsta. Pentru a face acest lucru, navigați la Site-uri > Instrumente > Depanare WordPress și faceți clic pe butonul Activare . Acest lucru vă va permite să vedeți erori și notificări PHP fără a activa modul de depanare prin SSH sau SFTP.

În cele din urmă, puteți verifica fișierele jurnal ale serverului. În funcție de serverul pe care îl utilizați pentru a găzdui site-ul dvs. WordPress, acestea se găsesc de obicei în următoarele locații:

  • Apache: /var/log/apache2/error.log/
  • Nginx: /var/log/nginx/error.log/

Puteți consulta documentația Apache sau Nginx referitoare la logare pentru mai multe informații.

Configurați corect setările Apache sau Nginx

Puteți edita fișierele de configurare a serverului pentru a crește limitele de resurse pentru anumite directive. Acest lucru vă poate ajuta să rezolvați eroarea 504 Gateway Timeout.

Pentru serverele web Apache

Mai întâi, adăugați următorul cod la httpd.conf :

 TimeOut 600

Această setare definește cât timp va aștepta serverul pentru anumite solicitări înainte de a le marca ca o problemă de expirare a rețelei. Valoarea sa implicită este de 60 de secunde (versiunea Apache 2.4).

Puteți adăuga această directivă numai în fișierul dvs. httpd.conf , nu în fișierul dvs. .htaccess. Deoarece majoritatea furnizorilor de găzduire partajată nu vă permit să modificați fișierul httpd.conf , puteți încerca să creșteți valoarea directivei LimitRequestBody în fișierul dvs. .htaccess .

Apoi adăugați următoarea linie în fișierul dvs. php.ini :

 max_execution_time 300

Valoarea implicită a directivei max_execution_time a PHP este de 30 de secunde. Creșterea acestuia va permite scripturilor PHP ale site-ului dvs. să ruleze mai mult.

Pentru serverele web Nginx

Dacă rulați site-urile WordPress pe Nginx + FastCGI Process Manager (PHP-FPM) sau folosiți Nginx ca proxy invers pentru Apache, puteți modifica setările serverului pentru a preveni erorile 504 Gateway Timeout.

Eroare 504 Gateway Timeout pe Nginx + FastCGI (PHP-FPM)

În primul rând, trebuie să editați fișierul de configurare a pool-ului PHP-FPM. Îl puteți găsi la locația /etc/php7.4/fpm/pool.d/www.conf de pe serverul dvs. Nginx (calea exactă poate varia în funcție de versiunea PHP). Alternativ, puteți rula următoarea comandă în terminalul dvs. pentru a edita fișierul de configurare a pool-ului PHP-FPM:

 sudo nano /etc/php/7.2/fpm/pool.d/www.conf

Apoi, setați următoarea directivă:

 request_terminate_timeout = 300

După aceasta, trebuie să editați fișierul php.ini . Îl puteți găsi la /etc/php.ini . Deschideți fișierul și adăugați/modificați valoarea pentru directiva max_execution_time la 300 de secunde.

 max_execution_time = 300

În cele din urmă, adăugați următorul cod la blocul de locație al fișierului nginx.conf :

 location ~ .php$ { ... fastcgi_read_timeout 300; }

Reîncărcați Nginx și PHP-FPM pentru ca modificările să intre în vigoare.

 sudo service nginx reload sudo service php7.4-fpm reload

Codul exact de reîncărcat PHP-FPM va varia în funcție de versiunea PHP instalată pe serverul dvs. Testează-ți site-ul pentru a vedea dacă a rezolvat problema.

504 Eroare de expirare a gateway-ului pe proxy Nginx

Dacă utilizați Nginx ca server proxy invers pentru Apache, atunci îl puteți face mai indulgent față de timeout-urile serverului, adăugând următoarele directive în fișierul dvs. nginx.conf :

 proxy_connect_timeout 600; proxy_send_timeout 600; proxy_read_timeout 600; send_timeout 600;

Nu uitați să reîncărcați Nginx după ce ați făcut modificările.

sudo service nginx reload

Alte erori HTTP, cum ar fi 504 Gateway Timeout

După cum sa menționat mai devreme în articol, multe alte erori HTTP 5xx sunt la fel ca eroarea 504 Gateway Timeout. Pentru că toate se întâmplă pe partea serverului. Aceste erori includ:

  • 500 Eroare internă a server-ului
  • 501 Eroare neimplementată
  • 502 Eroare de gateway greșit
  • 503 Eroare serviciu indisponibil

Alte erori HTTP cauzate de probleme la nivelul clientului, cum ar fi eroarea 404 Not Found, sunt, de asemenea, ca eroarea 504. Puteți consulta ghidul detaliat Kinsta și lista codurilor de stare HTTP pentru mai multe informații.

Când nu știți ce a cauzat o eroare 504 Gateway Timeout, cum o remediați la timp pentru a împiedica vizitatorii câștigați din greu să ajungă la site-urile concurenței? Toate detaliile sunt in aceasta postare. Faceți clic pentru a trimite pe Tweet

rezumat

Site-ul dvs. WordPress poate fi afectat de eroarea 504 Gateway Timeout din mai multe motive. În acest articol, ați învățat cum să le remediați pe toate. De obicei, aceste erori sunt cauzate de probleme la nivelul serverului, caz în care puteți contacta gazda și rezolvați rapid.

Cu toate acestea, trebuie să înțelegeți, de asemenea, că această eroare se poate datora pluginurilor, temelor, serviciilor, interogărilor ineficiente ale bazei de date sau unei combinații a două sau mai multe dintre acestea. Dacă maximizați resursele serverului dvs. (de exemplu lucrătorii PHP), este recomandat să vă optimizați site-ul pentru performanță.

Dacă tot descoperiți că site-ul dvs. web expiră, atunci s-ar putea foarte bine să aveți nevoie să vă actualizați planul de găzduire sau numărul de lucrători PHP. Vă recomand să luați în considerare această opțiune numai după ce ați epuizat toate celelalte soluții descrise în acest articol.

From simple static sites to complex ecommerce and membership sites, Kinsta's scalable hosting plans are designed to accommodate all types of websites. To learn more about our scalable cloud hosting, check out this article!

Did we miss anything? If you're still finding it difficult to fix the 504 Gateway Timeout error on your WordPress site, leave a comment below.