Hibák előfordulnak – váratlan karbantartás, egy észrevétlenül maradt hiba, vagy egy oldal vírusként terjed, és a kapcsolatok áradata leállítja a szervert.

Ha már hosszabb ideje online vagy, kétségtelenül láttad már a kissé homályos 503 Service Unavailable hibát.

Ebben a cikkben áttekintjük a HTTP státuszkódokat, hogy mit jelent az 503-as hiba, és néhány lehetséges megoldást – mind a meglátogatni kívánt webhely, mind a saját webhelye esetében.

A HTTP státuszkódok áttekintése

A weboldalakat fogadó szerverek figyelik a webböngészők vagy eszközök – más néven kliensek – kéréseit. A kiszolgáló ezután egy csomó különböző státuszkódot használ a visszakommunikációhoz.

Ezek az állapotkódok különböző osztályokba vannak rendezve, amit az állapotkód első száma jelez:

  • 1xx: Információ – a kiszolgáló még feldolgozza a kérést
  • 2xx: Siker – a kérés sikeres volt, és a kiszolgáló válaszol az oldallal vagy erőforrással
  • 3xx: Átirányítás – az oldal vagy erőforrás áthelyeződött, és a szerver az új helyével válaszol
  • 4xx: Ügyfélhiba – a böngésző vagy az eszköz kérése hibás
  • 5xx: Szerverhiba – hiba van a szerverrel

A HTTP státuszkódok utolsó két számjegye az egyes osztályok specifikusabb állapotát jelenti. Például a 301 azt jelenti, hogy egy oldal vagy erőforrás véglegesen áthelyeződött, míg a 302 azt jelenti, hogy az áthelyezés ideiglenes.

Nézze meg ezt az oldalt a gyakori HTTP státuszkódok és jelentésük listájáért: https://en.wikipedia.org/wiki/List_of_HTTP_status_codes

A legtöbb állapotkód teljesen észrevétlen marad, ami nem baj, mert azt jelenti, hogy minden működik. Csak amikor a 4xx-5xx tartományba érsz, akkor lehet, hogy észreveszel egy státuszkódot, mert akkor egy ilyen oldal jelenik meg:

Egy tipikus 503-as hibaoldal – Forrás: Stack Overflow

Most, hogy már alapvetően megértetted a HTTP státuszkódokat, ássunk egy kicsit mélyebbre az 503 Service Unavailable hibában.

Mit jelent az 503-as hibakód?

Amint fentebb említettük, az 5xx státuszkódok azt jelentik, hogy magával a szerverrel van probléma.

Az 503 Service Unavailable hiba azt jelenti, hogy az oldal vagy erőforrás nem érhető el. Számos oka lehet annak, hogy egy kiszolgáló 503-as hibát küld vissza, de néhány gyakori ok a karbantartás, a kiszolgáló kódjában lévő hiba vagy a forgalom hirtelen megugrása, ami miatt a kiszolgáló túlterhelté válik.

Az 503-as hibával együtt küldött üzenet attól függően változhat, hogy milyen szerverről érkezik, de itt van néhány a leggyakrabban előforduló üzenetek közül:

– 503 Service Unavailable
– 503 Service Temporarily Unavailable
– HTTP Server Error 503
– HTTP Error 503
– Error 503 Service Unavailable
– A szerver karbantartási leállás vagy kapacitásproblémák miatt ideiglenesen nem tudja kiszolgálni a kérését. Kérjük, próbálja meg később újra.
Forrás

Az 503-as hiba okától függetlenül általában átmeneti – a szerver újraindul, a forgalom lecseng, és a probléma magától megoldódik.

Hogyan oldható meg az 503 Status Unavailable hiba

Az 503-as hiba megoldása során két általános tábor létezik.

Az első, amikor Ön végfelhasználó, és egy olyan webhelyet próbál meglátogatni, amely nem az Öné. A másodikban Ön a webhely tulajdonosa, és az 503-as hibát dob az embereknek, akik megpróbálják meglátogatni.

Az 503-as hibák megoldásának módszere attól függően változik, hogy Ön melyik csoportba tartozik. Nézzünk meg néhány dolgot, amit végfelhasználóként tehet, ha 503-as hibát lát.

Hogyan oldja meg az 503 Status Unavailable hibát végfelhasználóként

Mivel az 5xx állapotkódok azt jelentik, hogy a hiba a szerveroldalon van, közvetlenül nem sokat tehet.

Noha az 503-as hibák általában ideiglenesek, van néhány dolog, amit tehet, amíg várakozik.

#1: Frissítse az oldalt

Néha a hiba annyira ideiglenes, hogy elég egy egyszerű frissítés. Az oldal megnyitásakor csak nyomja le a Ctrl – R billentyűt Windowson és Linuxon, vagy a Cmd – R billentyűt macOS-en az oldal frissítéséhez.

#2: Nézze meg, hogy az oldal más emberek számára nem elérhető-e

A következő, amit tehet, hogy egy olyan szolgáltatást használ, mint az Is It Down Right Now? vagy Down For Everyone Or Just Me, hogy megnézd, mások is megkapják-e ugyanazt a hibát.

Menj fel valamelyik oldalra, és add meg az oldal URL-címét, amelyet meg akarsz látogatni.

A szolgáltatás pingelni fogja a megadott URL-címet, hogy lássa, kap-e választ. Ezután megjelenít néhány klassz statisztikát és grafikont az oldalról:

Checking freeCodeCamp on Is It Down Right Now?

Ha egy kicsit lejjebb görgetsz, láthatsz néhány kommentet másoktól. Gyakran az emberek megadják az általános tartózkodási helyüket és egyéb adatokat, így ez jó módszer lehet annak megállapítására, hogy a hiba csak bizonyos régiókat vagy konkrét eszközöket érint-e.

#3: Indítsa újra a routerét

Néha a probléma a DNS-kiszolgáló hibájával függ össze.

A DNS a Domain Name System rövidítése, és alapvetően az IP-címek és az ember által olvasható URL-címek közötti fordítóként működik.

Meglátogathatja például a Google-t, ha közvetlenül megadja a hosszú IP-címét (172.217.25.206), vagy egyszerűen csak beírja az URL-t: www.google.com.

Ez a DNS, amelyet gyakran egy szerveren tárolnak, a színfalak mögött kezeli mindezt.

Ez azt jelenti, hogy sok útválasztó gyorsítótárba teszi a DNS-kiszolgálók válaszait (www.google.com <==> 172.217.25.206). De néha ez a gyorsítótár megsérülhet, és hibákat okozhat.

A gyorsítótár visszaállításának vagy “kiürítésének” egyszerű módja a router újraindítása. Csak húzza ki a routerét körülbelül 5 másodpercre, majd dugja vissza.

Egy perc múlva újra kell indítania, és az összes eszközének automatikusan újra kell csatlakoznia. Ha ez megtörtént, próbálja meg újra meglátogatni a webhelyet.

Hogyan oldja meg az 503 Status Unavailable hibát a webhely tulajdonosaként

Ha Ön a tulajdonosa/fejlesztője annak a webhelynek, amely 503-as hibát küld vissza, akkor egy kicsit többet tehet a probléma diagnosztizálása és megoldása érdekében.

Itt van néhány általános tipp a kezdéshez:

#1: Indítsa újra a szervert

A fejlesztés nehéz feladat – még egy egyszerű statikus oldalnak is annyi mozgó része lehet, hogy nehéz lehet pontosan meghatározni, mi okozza az 503-as hibát.

Néha az a legjobb, ha újraindítjuk a szervert, és meglátjuk, hogy ez megoldja-e a problémát.

Forrás: imgflip

A szerver újraindításának pontos módja változhat, de általában a szolgáltató műszerfaláról vagy a szerverhez SSH-n keresztül történő belépéssel és az újraindítási parancs futtatásával érhető el.

A szervernek néhány perc múlva újra kell indulnia. Ha mindent úgy állítottál be, hogy indításkor automatikusan fusson, akkor meglátogathatod a webhelyedet, és megnézheted, hogy működik-e.

#2: Ellenőrizd a szervernaplókat

A következő teendő a naplók ellenőrzése.

A szervernaplók helye attól függően változhat, hogy milyen szolgáltatást futtatsz, de gyakran a /var/log/... könyvtárban találod őket.

Nézz körül ebben a könyvtárban, hátha találsz valamit. Ha nem, akkor a man program_name.

#3: Ellenőrizze, hogy van-e folyamatos automatikus karbantartás

Néhány szolgáltató automatikus csomagfrissítést és karbantartást kínál. Ez általában jó dolog – általában leállások idején történnek, és segítenek abban, hogy minden naprakész legyen.

Egyszer előfordul, hogy az 503-as hibák ezeknek az ütemezett karbantartásoknak köszönhetőek.

A WordPress tárhelyszolgáltatásra specializálódott egyes tárhelyszolgáltatók például automatikusan frissítik a WP-t, amikor új kiadás jelenik meg. A WordPress automatikusan 503 Service Unavailable hibát küld vissza, amikor frissítésre kerül.

Nézzen utána a szolgáltatójánál, hogy az 503-as hibát az ütemezett karbantartás okozza-e.

#4: Ellenőrizze a szerver tűzfalának beállításait

Néha az 503 Service Unavailable hibákat egy rosszul konfigurált tűzfal okozza, ahol a kapcsolatok átjutnak ugyan, de nem jutnak vissza az ügyfélhez.

A tűzfalának speciális beállításokra is szüksége lehet egy CDN esetében, ahol a kis maroknyi IP-címről érkező többszörös kapcsolatokat DDoS-támadásként értelmezhetik félre.

A tűzfal beállításainak pontos módszere sok tényezőtől függ. Nézze meg a csővezetékét és a szolgáltatója műszerfalait, hogy hol tudja beállítani a tűzfalat.

#5: Ellenőrizze a kódot

A hibák, akárcsak a hibák, előfordulnak. Akárhogy is próbálod, lehetetlen mindet elkapni. Néha előfordulhat, hogy egy átcsúszik, és 503-as hibát okoz.

Ha minden mást megpróbáltál, de az oldalad még mindig 503 Service Unavailable hibát mutat, az ok valahol a kódban lehet.

Tesztelj minden szerveroldali kódot, és különösen figyelj oda mindenre, ami a reguláris kifejezésekkel kapcsolatos – a freeCodeCampen egy apró regex hiba okozta a CPU használat hatalmas növekedését, gördülő kieséseket és körülbelül három napnyi pánikot.

Remélhetőleg sikerül lenyomozni a hibát, telepíteni a javítást, és minden visszatér a normális kerékvágásba.

Összefoglalva

Ez minden, amit az 503 Service Unavailable hibákról tudni kell. Bár általában nem sokat tehetsz, ha 503-as hibát látsz, remélhetőleg ezek a lépések segítenek, ha legközelebb ilyen hibával találkozol.

Vigyázz magadra, és boldog frissítést, amíg nem működik 🙂