Chyba 500 a 503: Kdy je problém v hostingu a jak ho řešit

Chyba 500 nebo 503 se zobrazí ve chvíli, kdy webový server nedokáže správně zpracovat požadavek nebo je služba dočasně nedostupná. Příčina může být přímo na straně hostingu, ale také v redakčním systému, pluginu, šabloně, PHP, databázi nebo nesprávné konfiguraci webu. V tomto článku si ukážeme, co chyby 500 a 503 znamenají, kdy může být problém u poskytovatele hostingu a jak zjistit skutečnou příčinu.

Chyba 500 a 503: Kdy je problém v hostingu a jak ho poznat
Chyby 500 Internal Server Error a 503 Service Unavailable patří mezi nejčastější serverové chyby, se kterými se může návštěvník webu setkat. Na rozdíl například od chyby 404 nejde obvykle o problém s tím, že by stránka neexistovala. Server požadavek přijal, ale nedokázal ho správně dokončit nebo momentálně není schopen požadovanou službu obsloužit.

To ale ještě automaticky neznamená, že je problém přímo u hostingové společnosti. U webu provozovaného například na WordPressu může chybu způsobit nekompatibilní plugin, špatná konfigurace PHP, poškozený soubor, vyčerpaná paměť nebo chyba v databázi.

Důležité proto je zjistit, kde přesně chyba vzniká.

1. Co znamená chyba 500 Internal Server Error?
Chyba 500 Internal Server Error je obecná odpověď serveru, která říká, že při zpracování požadavku nastala neočekávaná chyba.

Pro návštěvníka webu může být zobrazena například jako:

„500 Internal Server Error“

nebo pouze:

„Internal Server Error“

Samotná chyba 500 většinou neříká přesně, co se pokazilo. Konkrétní příčinu je proto potřeba hledat v serverových logách, konfiguraci webu a aplikaci.

U webu může chybu způsobit například:

  • chyba PHP,
  • nekompatibilní plugin,
  • chyba šablony,
  • nesprávný soubor .htaccess,
  • nedostatek PHP paměti,
  • překročení některého limitu hostingu,
  • problém s databází,
  • špatná konfigurace serveru,
  • poškozené soubory webu,
  • chyba po aktualizaci WordPressu, pluginu nebo PHP.

2. Co znamená chyba 503 Service Unavailable?
Chyba 503 Service Unavailable znamená, že služba není v danou chvíli dostupná.

Může jít například o situaci, kdy je server:

  • přetížený,
  • v údržbě,
  • dočasně nedostupný,
  • zahlcený velkým počtem požadavků,
  • omezený kvůli vyčerpání prostředků,
  • postižený technickou poruchou.

Chyba 503 proto může mít s hostingem ještě přímější souvislost než chyba 500. Ani zde však nelze automaticky říci, že hosting nefunguje.

Příčinou může být například i WordPressový plugin, který spotřebovává příliš mnoho prostředků nebo způsobuje opakované požadavky na server.

3. Kdy může být problém skutečně v hostingu?
Na hosting je vhodné se zaměřit především tehdy, pokud se chyba objevuje bez zjevné změny na webu a současně ji nelze vysvětlit změnou konfigurace nebo aktualizací.

Podezření na problém hostingu zvyšuje například situace, kdy:

  • přestane fungovat více webů na stejném hostingu,
  • web nefunguje ani po deaktivaci problematických částí,
  • server je dlouhodobě nedostupný,
  • hosting hlásí výpadek,
  • dochází k opakovaným chybám 503,
  • serverové prostředky jsou vyčerpané,
  • nefunguje databázový server,
  • hosting má technický problém s PHP nebo webovým serverem.

Pokud máš na jednom hostingu několik webů a ve stejnou dobu přestanou fungovat všechny, je to velmi důležitá indicie. Problém pravděpodobně nebude pouze v jednom WordPressu.

4. Jak poznat, že chyba není v hostingu?
Existuje i opačná situace. Hosting funguje, ale problém způsobuje konkrétní web.

Typickým příkladem je WordPress, který přestane fungovat bezprostředně po instalaci nebo aktualizaci pluginu.

Pokud například web fungoval v 10:00, v 10:05 proběhla aktualizace pluginu a následně se začala zobrazovat chyba 500, je rozumné nejprve hledat příčinu právě v této změně.

Stejně tak může problém vzniknout po:

  • aktualizaci WordPressu,
  • aktualizaci PHP,
  • instalaci nové šablony,
  • instalaci pluginu,
  • změně .htaccess,
  • změně nastavení PHP,
  • úpravě konfigurace webu,
  • změně databázového připojení.

V takovém případě nemusí být chyba vůbec na straně poskytovatele hostingu.

5. Zkontroluj, zda funguje administrace WordPressu
Pokud provozuješ WordPress a zobrazí se chyba 500, zkus otevřít také:

https://www.example.cz/wp-admin/

Pokud nefunguje web ani administrace, může jít o závažnější problém s PHP, serverem, databází nebo WordPressem.

Pokud funguje administrace, ale nefunguje pouze určitá část webu, může být problém například v pluginu, šabloně nebo konkrétním PHP skriptu.

Někdy se také stává, že chyba vzniká pouze na jedné stránce, zatímco zbytek webu funguje normálně. To je další důvod hledat příčinu nejprve v samotné aplikaci.

6. Zkontroluj serverové logy
Jedním z nejdůležitějších kroků při řešení chyby 500 je kontrola error logu.

Serverový log může obsahovat mnohem konkrétnější informaci než samotná stránka s chybou 500.

Může například ukázat:

  • PHP Fatal error,
  • nedostatek paměti,
  • chybu v konkrétním souboru,
  • chybu oprávnění,
  • problém s databází,
  • chybu konfigurace,
  • překročení některého limitu.

Pokud hosting poskytuje přístup k logům, vyplatí se podívat na čas, kdy se chyba objevila.

Například pokud web zobrazil chybu 500 v 21:30:15, najdi v logu záznamy z tohoto času. Často tak lze zjistit, co přesně server požadavek odmítlo zpracovat.

7. Nedostatek PHP memory limitu může způsobit chybu 500
U WordPressu může být problémem také nedostatek dostupné PHP paměti.

Náročný plugin, import velkého množství dat nebo složitý skript může spotřebovat více paměti, než má PHP pro daný web k dispozici.

Výsledkem může být chyba typu:

„Allowed memory size exhausted“

V takové situaci není správné automaticky obviňovat hosting. Může jít o kombinaci nastavení hostingu a příliš náročného webu.

Řešením může být například:

  • zvýšení PHP memory limitu,
  • deaktivace problematického pluginu,
  • optimalizace skriptu,
  • odstranění zbytečných pluginů,
  • použití vhodnějšího hostingu.

Pokud ale hosting nastavil velmi nízké limity a neumožňuje jejich rozumné zvýšení, může být omezení skutečně způsobeno konkrétním hostingovým tarifem.

8. Přetížení webu může způsobit chybu 503
Chyba 503 se může objevit v okamžiku, kdy web dostane více požadavků, než je server schopen současně zpracovat.

Nemusí jít přitom nutně o velký zpravodajský web s miliony návštěvníků. Problém může způsobit také špatně napsaný plugin nebo automatizovaný proces.

Například:

  • zálohování,
  • import produktů,
  • generování náhledů,
  • rozsáhlý cron,
  • vyhledávací robot,
  • útok nebo množství automatických požadavků,
  • náročný databázový dotaz.

Pokud má hosting omezený počet PHP procesů nebo jiné serverové limity, může se web dostat na hranici svých možností.

9. Pozor na limity levného hostingu
Každý hosting má určité limity. Nejde pouze o prostor na disku.

Důležité mohou být například:

  • PHP memory limit,
  • počet současných PHP procesů,
  • CPU,
  • RAM,
  • počet databázových spojení,
  • počet databází,
  • velikost databáze,
  • počet souborů,
  • disková kapacita,
  • rychlost databáze,
  • limity cron úloh.

Web může mít například dostatek prostoru na disku, ale přesto být pomalý nebo padat na chybu 500 či 503 kvůli jinému omezení.

Proto není vhodné hodnotit hosting pouze podle toho, kolik nabízí gigabajtů prostoru.

10. Co když nefunguje více webů najednou?
Toto je jeden z nejjednodušších způsobů, jak odhalit problém na straně hostingu.

Představ si, že máš na jednom serveru tři weby:

Web A – chyba 503
Web B – chyba 503
Web C – chyba 503

A všechny přestaly fungovat přibližně ve stejnou dobu.

Pokud na těchto webech nebyla současně provedena stejná změna, je rozumné podezření na společnou infrastrukturu.

Může jít například o:

  • výpadek serveru,
  • problém s PHP,
  • problém databázového serveru,
  • síťový problém,
  • přetížení serveru,
  • údržbu,
  • technickou poruchu datacentra nebo infrastruktury.

V takové situaci má smysl kontaktovat technickou podporu hostingu.

11. Co když chyba vzniká pouze na jednom webu?
Pokud máš na stejném hostingu například deset webů a problém má pouze jeden z nich, je pravděpodobnější, že příčina souvisí přímo s tímto webem.

Neznamená to však, že hosting nemůže být příčinou. Jeden web může například vyčerpat individuální limit svého účtu.

Zkontroluj proto:

  • poslední provedené změny,
  • pluginy,
  • šablonu,
  • PHP verzi,
  • databázi,
  • .htaccess,
  • PHP log,
  • dostupné prostředky,
  • nastavení hostingu.

12. Změna PHP verze může způsobit chybu 500
Velmi častou příčinou problémů u starších webů je změna verze PHP.

Starý plugin nebo šablona může být napsaná způsobem, který novější PHP již nepodporuje.

Po přepnutí například na novější verzi PHP se proto může objevit chyba 500.

Pokud web fungoval před změnou PHP a přestal fungovat bezprostředně po ní, je vhodné hledat příčinu právě v kompatibilitě.

Dlouhodobým řešením není bezhlavě používat starou verzi PHP. Správnější je zjistit, který plugin, šablona nebo část aplikace není s novější verzí kompatibilní, a problém odstranit.

13. Chybný .htaccess může způsobit chybu 500
U webů na Apache serveru může být problém také v souboru .htaccess.

Stačí například nesprávně vložené pravidlo nebo direktiva, kterou konkrétní server nepodporuje, a web může začít vracet chybu 500.

Pokud problém vznikl bezprostředně po úpravě .htaccess, je vhodné nejprve zkontrolovat právě tuto změnu.

U WordPressu lze také v určitých situacích obnovit výchozí pravidla přepisování URL prostřednictvím nastavení trvalých odkazů.

Před ručními zásahy do konfigurace je ale vhodné vytvořit zálohu původního souboru.

14. Databáze může být příčinou problémů
Webová aplikace často potřebuje pro svůj provoz databázi. Pokud databázový server není dostupný nebo aplikace nedokáže vytvořit spojení, může se zobrazit chyba 500 nebo jiná serverová chyba.

Příčinou může být:

  • výpadek databázového serveru,
  • špatné přihlašovací údaje,
  • vyčerpaný limit spojení,
  • poškozená databáze,
  • chyba konfigurace,
  • problém na straně hostingu.

Pokud se stejný problém objeví na více webech používajících stejný databázový server, je vhodné kontaktovat hosting.

15. Kdy kontaktovat technickou podporu hostingu?
Technickou podporu kontaktuj zejména tehdy, pokud:

  • web vrací chybu 500 nebo 503 bez zjevné změny,
  • nefunguje více webů současně,
  • chyba se opakuje,
  • serverové logy ukazují na infrastrukturu hostingu,
  • databáze není dostupná,
  • PHP služba nefunguje správně,
  • web hlásí vyčerpání serverových prostředků,
  • hosting uvádí výpadek,
  • problém přetrvává i po odstranění změn na webu.

Podpoře je vhodné poslat co nejpřesnější informace.

Místo zprávy:

„Web mi nefunguje.“

je mnohem užitečnější napsat:

„Od 21:30 web vrací chybu 503. Problém se objevuje na hlavní stránce i administraci. Na stejném hostingu mám další dva weby, které fungují. V error logu se objevuje chyba XY.“

Taková informace výrazně usnadní hledání příčiny.

16. Jak rychle zjistit, zda jde o hosting?
Pokud chceš problém diagnostikovat co nejrychleji, postupuj systematicky.

Krok 1: Zkus web otevřít z jiného zařízení.
Krok 2: Zkontroluj, zda fungují jiné weby na stejném hostingu.
Krok 3: Zjisti, zda byla před vznikem chyby provedena nějaká změna.
Krok 4: Zkontroluj PHP a serverové logy.
Krok 5: Zkontroluj využití dostupných prostředků.
Krok 6: Ověř databázi.
Krok 7: Zkontroluj pluginy, šablonu a konfiguraci webu.
Krok 8: Pokud problém nevysvětlí žádná změna na webu, kontaktuj hosting.

Tento postup je mnohem účinnější než náhodné vypínání jednotlivých částí webu.

17. Chyba 500 vs. chyba 503 – jaký je rozdíl?
Zjednodušeně lze rozdíl chápat takto:

500 Internal Server Error

Server požadavek přijal, ale při jeho zpracování došlo k neočekávané chybě.

Často může souviset s aplikací, PHP, konfigurací nebo serverem.

503 Service Unavailable

Požadovaná služba momentálně není dostupná.

Často může souviset s přetížením, údržbou, nedostupnou službou nebo vyčerpáním prostředků.

Ani jeden z těchto kódů však sám o sobě neříká, kdo chybu způsobil.

To je potřeba zjistit podle okolností a logů.

18. Kdy je vhodné změnit hosting?
Jednorázová chyba 500 nebo 503 ještě není důvodem k okamžitému přesunu webu.

Jiná situace nastává, pokud se podobné problémy opakují dlouhodobě a web naráží na limity hostingu.

Důvodem k úvahám o změně může být například dlouhodobé vyčerpávání dostupných prostředků, nedostatečné možnosti konfigurace nebo opakované technické problémy, které se nedaří řešit.

Před změnou hostingu je však důležité zjistit konkrétní příčinu. Pokud problém způsobuje například špatně napsaný plugin, přesun na jiný hosting nemusí nic vyřešit.

Naopak pokud web pravidelně naráží na limity současného serveru, může být vhodné zvážit výkonnější tarif nebo jiný typ hostingu.

Závěr
Chyba 500 nebo 503 neznamená automaticky, že je špatný hosting. Obě chyby mohou vzniknout přímo na serveru, ale stejně tak je může způsobit WordPress, PHP, plugin, šablona, databáze nebo nesprávná konfigurace.

Při hledání příčiny je proto důležité zjistit především:

  • zda nefunguje jeden nebo více webů,
  • zda před vznikem chyby proběhla nějaká změna,
  • co obsahují serverové a PHP logy,
  • zda nejsou vyčerpané prostředky,
  • zda funguje databáze,
  • zda odpovídá verze PHP používanému webu,
  • zda problém souvisí s pluginem nebo šablonou.

Pokud chyba 500 nebo 503 vzniká současně na více webech a bez jakékoli změny na jejich straně, je na místě prověřit hosting. Pokud problém vznikl bezprostředně po aktualizaci, změně PHP nebo úpravě konfigurace, hledej příčinu nejprve přímo ve webu.

Nejdůležitější je neřešit pouze samotný chybový kód. Chyba 500 ani 503 není diagnóza, ale pouze informace, že server nedokázal požadavek správně dokončit. Skutečnou příčinu obvykle odhalí až logy, dostupné serverové prostředky a okolnosti, za kterých chyba vznikla.