Kao posjetitelju ili vlasniku web-mjesta, vidjeti pogrešku 502 Bad Gateway može biti zbunjujuće jer konkretan problem nije jasan. Ovo je popularan, generički, HTTP statusni kod. Pod pretpostavkom da je vaša internetska veza u redu, kad vidite ovu poruku, najvjerojatnije postoji problem u komunikaciji s poslužiteljem. A rezultat je da ne vidite web stranicu koju ste zatražili.
Iako je pogreška 502 obično problem na strani poslužitelja, uzrok može povremeno biti na strani klijenta. U ovom članku pomoći ćemo vam da dođete do dna ove misterije isprobavanjem jednostavnih savjeta na strani klijenta. Ili ćete riješiti problem ili se približiti razumijevanju uzroka.
502 Značenje lošeg pristupnika
Kad god pokušate pristupiti web stranici, vaš preglednik u osnovi traži od web poslužitelja da pristupi stranici. Web poslužitelj će tada obraditi vaš zahtjev i vratiti resurs koji ste tražili zajedno s HTTP zaglavljem i HTTP statusnim kodom.
Ali ako postoji problem s poslužiteljem, možda ćete dobiti jedan od nekoliko različitih kodova pogreške 500. Svi oni ukazuju na problem s poslužiteljem. Stoga je greška 502 Bad Gateway – zahtjev klijenta (vaš preglednik) – bila dobra, ali poslužitelj nije mogao vratiti traženi resurs.
502 Popravak lošeg pristupnika
Evo nekoliko savjeta koje možete isprobati iz svog web preglednika kako biste, nadamo se, izbrisali pogrešku 502 Bad Gatewaya i prikazali svoju web stranicu.
1. Pokušajte ponovno učitati stranicu
Pogreška bi mogla biti uzrokovana kvarom na poslužitelju, a ne prekidom, a problemi s vezom poslužitelja mogu se riješiti relativno brzo u većini slučajeva.
Započnite ponovnim učitavanjem stranice – kliknite na kružnu strelicu u blizini URL adresne trake. U Chromeu i Safariju je lijevo, u Firefoxu je desno. Pričekajte minutu prije ponovnog učitavanja stranice. Ako se web stranica prikaže, problem je nestao.
Još jedna brza stvar koju možete pokušati je otvoriti novu sesiju preglednika. Zatvorite sve otvorene prozore preglednika, zatim otvorite novi prozor i pokušajte ponovno navigirati na web stranicu.
može se prebaciti na play wii u igre
2. Pokušajte izbrisati predmemoriju preglednika
Vaš web preglednik sprema informacije sa svake web stranice koju posjetite u predmemoriju preglednika. Kad god ponovno posjetite web stranicu, stranice se brže učitavaju jer vaš preglednik koristi ono što je pohranjeno u predmemoriji.
Međutim, ova postavka nije uvijek dobra stvar. Ako predmemorija vašeg preglednika ima zastarjelu ili oštećenu verziju web-mjesta, to može uzrokovati pogrešku 502. Razmislite o brisanju predmemorije preglednika kako biste dobili najnoviju verziju web-stranica na koje pokušavate doći. Evo kako se to radi:
Krom
- U prozoru preglednika Chrome kliknite na izbornik s tri točke u gornjem desnom kutu.
- Odaberite opciju Više alata.
- Odaberite Obriši podatke pregledavanja…
- U skočnom prozoru Brisanje podataka pregledavanja provjerite je li označena samo opcija Spremljene slike i datoteke, odlučite o vremenskom rasponu, a zatim Obrišite podatke.
Firefox
- U prozoru preglednika Firefox kliknite ikonu hamburgera u gornjem desnom kutu.
- Kliknite Povijest.
- Odaberite Obriši nedavnu povijest…
- U skočnom prozoru, u vremenskom rasponu za brisanje, odaberite Sve.
- Provjerite je li označen samo okvir Predmemorije, a zatim Očisti sada.
Safari
Da biste ispraznili predmemoriju u pregledniku Safari, potrebno je omogućiti izbornik Razvoj. Uraditi ovo:
- Idite na Postavke pa Napredno.
- Označite okvir Prikaži izbornik za razvoj na traci izbornika.
- Idite na Develop, a zatim na Isprazni predmemoriju.
502 Bad Gateway u NGINX-u
PHP-FastCGI Process Manager (PHP-FPM) je pozadinski proces za rukovanje zahtjevima web poslužitelja za PHP aplikacije. NGINX prosljeđuje web zahtjeve na PHP-FPM radne procese koji izvršavaju PHP aplikaciju. NGINX vraća pogrešku 502 Bad Gateway kada ne može uspješno delegirati zahtjev PHP-FPM-u ili ako PHP-FPM ne odgovori.
Evo najčešćih razloga zašto NGINX vraća pogrešku 502:
- PHP-FPM ne radi.
- NGINX ne može komunicirati s PHP-FPM-om.
- PHP-FPM je istekao.
Sada pogledajmo kako potvrditi je li bilo što od gore navedenog problem i kako ga riješiti.
1. Provjerite radi li PHP-FPM
Kada PHP-FPM nije pokrenut, NGINX će vratiti pogrešku 502 na sve zahtjeve koji su namijenjeni da dođu do PHP aplikacije. Možete koristiti ps naredbu preko Linux hosta za provjeru pokretanja PHP-FPM procesa. Naredba je:
|_+_|.
Ako rezultati ove naredbe ne prikazuju PHP-FPM spremište ili primarne procese, PHP-FPM mora biti pokrenut kako bi se ispravile pogreške 502. Kako biste svoju PHP aplikaciju učinili pouzdanijom, razmislite o korištenju systemda za upravljanje PHP-FPM-om kao uslugom u vašem proizvodnom okruženju. Pozadinski proces PHP-FPM-a počet će automatski posluživati vašu PHP aplikaciju kad god se otvori nova instanca ili vaš poslužitelj započne.
Budući da je PHP-FPM ugrađen u PHP kod, možete ga dodati kao systemd uslugu kada postavite PHP. Nakon što je projekt postavljen kao usluga, upotrijebite ovu naredbu za automatski početak:
|_+_|.
2. Provjerite ima li NGINX pristup utičnici
Kada se PHP-FPM pokrene, on generira Unix ili TCP utičnice za povezivanje s NGINX web poslužiteljem. PHP-FPM radnički procesi trebaju utičnice za slušanje NGINX zahtjeva. Provjerite jesu li PHP-FPM i NGINX postavljeni da koriste istu utičnicu
PHP-FPM koristi različitu konfiguracijsku datoteku po skupu procesa. Da biste pronašli ove datoteke idite na:
|_+_|.
Pool utičnice su navedene u uputama za slušanje u njegovoj konfiguracijskoj datoteci, npr. sljedeća instrukcija za slušanje, konfigurira skup pod nazivom mypool da koristi Unix utičnicu koja se nalazi na: /run/php/mypool.sock :
|_+_|.
Ako NGINX ne može pristupiti utičnici bazena, možete utvrditi koji je to skup radnika tako što ćete ispitati koji je socket naveden u NGINX zapisniku pogrešaka. Na primjer, ako PHP-FPM nije pokrenuo skup radnika mypool-a, NGINX bi poslao pogrešku 502 i zapis bi izgledao slično ovome:
|_+_|() u unix: :/run/php/mypool.sock nije uspio (2: nema takve datoteke ili direktorija).
kako ući u dos način rada na pokretačkom sustavu Windows 7
3. Provjerite je li PHP-FPM istekao
Kada vašoj aplikaciji treba predugo da odgovori, korisnici će dobiti pogrešku vremenskog ograničenja. Ako je vremensko ograničenje PHP-FPM-a – fiksno u instrukciji konfiguracije bazena (request_terminate_timeout) – manje od vremenskog ograničenja NGINX-a, NGINX će vratiti grešku 502.
Možete povećati postavku vremenskog ograničenja PHP-FPM-a u konfiguracijskoj datoteci bazena. Međutim, to bi moglo uzrokovati još jedan problem: NGINX bi mogao isteći prije nego što dobije odgovor od PHP-FPM-a.
NGINX-ovo zadano vrijeme čekanja je 60 sekundi. Ako ste povećali PHP-FPM timeout na 60 sekundi, a vaša PHP aplikacija nije imala vremena odgovoriti, NGINX će izdati pogrešku 504 Gateway Timeout. Izbjegnite to povećanjem postavke vremenskog ograničenja NGINX-a.
502 Bad Gateway u Cloudflareu
Cloudflare će vratiti pogrešku 502 kada ne može pokrenuti valjanu vezu s izvornim web poslužiteljem vaše web stranice ili ako usluga Cloudflare nije dostupna ili je pogrešno konfigurirana. Najčešći uzroci uključuju:
- Izvorni poslužitelj je preopterećen s previše učitavanja poslužitelja što dovodi do zastoja poslužitelja
- WordPress web stranice s niskim ograničenjem PHP memorije ili previše MYSQL veza mogu uzrokovati sporo učitavanje poslužitelja
- Neispravni DNS zapisi, sukobi dodataka ili tema u WordPressu i kvarovi usluga, npr. PHP-FPM i usluge predmemorije
Isprobajte sljedeće savjete kako biste riješili pogrešku 502 Bad Gatewaya iz Cloudflarea:
1. Ponovno učitajte stranicu i izbrišite predmemoriju
Ponovno učitavanje web-stranice trebalo bi biti prvo što pokušate za bilo kakvu poruku o pogrešci. Pogreška 502, konkretno, može biti rezultat preopterećenja poslužitelja što uzrokuje privremene probleme s vezom. Pričekajte koju minutu prije ponovnog učitavanja stranice; ovo obično rješava problem.
Ako se pogreška 502 i dalje prikazuje, izbrišite predmemoriju preglednika i pokušajte ponovno. Dugo pritisnite Ctrl + F5 za Windows i Linux preglednike. Za Chrome i Safari na Macu to je Cmd + Shift + R.
2. Provjerite ima li u dodatku/temi sukoba
Ako koristite WordPress, pogreška 502 može biti posljedica pogrešno konfiguriranog dodatka. Da biste riješili je li to uzrok, onemogućite svoje dodatke - podaci neće biti izgubljeni.
- Prijavite se na svoj WordPress račun.
- Na bočnoj traci odaberite Dodaci.
- Primijenite Deaktiviranje na sve svoje dodatke.
Ako je pogreška 502 riješena, tada morate pronaći koji dodatak predstavlja problem. Da biste to učinili, pojedinačno ponovno aktivirajte dodatke. Nakon ponovnog aktiviranja svake od njih, ponovno učitajte web stranicu. Kada se pogreška Cloudflare ponovi, znat ćete koji je dodatak krivac. Možete zatražiti pomoć od programera dodataka tako što ćete objaviti ulaznicu u WordPressu.
Provjerite jesu li vaše teme i dodaci najnovije verzije i jesu li vaša PHP verzija podržana.
3. Privremeno onemogućite svoje vatrozide i CDN
Problem bi mogao uzrokovati mreža za isporuku sadržaja (CDN) ili vatrozidi. Ovo je čest problem kod pružatelja usluga s dodatnim slojevima vatrozida kao što je Cloudflare. Možete provjeriti Cloudflareovu online statusnu stranicu za informacije o problemima s njihovom uslugom ili ih možete kontaktirati.
Ako se potvrdi da je problem u vašim vatrozidima ili CDN-u, pokušajte ih privremeno onemogućiti, a zatim ih omogućiti.
4. Provjerite svoje DNS poslužitelje
Ponekad vaši poslužitelji sustava naziva domene (DNS) mogu vratiti pogrešku 502 jer domena vaše web stranice možda ne pokazuje na pravu IP adresu. Ako ste nedavno premjestili svoju web stranicu na drugu uslugu hostinga, morat ćete pričekati najmanje 24 sata da se dovrši širenje internetom.
Ako to nije slučaj, da biste izbrisali IP adrese i druge DNS zapise iz lokalne DNS predmemorije, možete ih pokušati isprazniti, evo kako:
- Pokrenite naredbeni prozor.
- Unesite |_+_|.
Ili putem Maca:
- Otvorite prozor terminala.
- Unesite |_+_|.
502 Bad Gateway riješen!
Poruka o pogrešci 502 Bad Gateway je standardni odgovor kada nešto nije u redu s komunikacijom između poslužitelja uključenih u vraćanje vašeg web zahtjeva.
Poruka o pogrešci 500 obično znači da postoji problem na strani poslužitelja razmjene. Međutim, ponekad uzrok može biti u korisničkoj lokalnoj računalnoj opremi i/ili mrežnim postavkama. Srećom, ovo je vrlo česta pogreška, a postoji mnogo stvari koje možete sami isprobati kako biste svoju web stranicu prikazali ili barem približili razumijevanju temeljnog uzroka.
Koje ste još poruke o pogrešci imali prilikom posjete web stranicama? Je li problem riješen? Javite nam u odjeljku za komentare.