S čím vám můžeme pomoci?

Jak nastavit vlastní chybovou stránku 404

Nastavení vlastní stránky pro chybu 404 (a také 403 a 500) pomocí ErrorDocument v souboru .htaccess.

Obsah návodu
  1. Krok 1: Vytvořte chybovou stránku
  2. Krok 2: Nastavte ErrorDocument v .htaccess
  3. Vlastní stránky pro chyby 403 a 500
  4. Krok 3: Otestujte
  5. Poznámka pro WordPress a jiné redakční systémy
  6. Nejčastější chyby

Když návštěvník zadá neexistující adresu nebo klikne na zastaralý odkaz, server vrátí chybu 404 a zobrazí strohou výchozí stránku. Vlastní chybová stránka ve vzhledu vašeho webu návštěvníka neodradí a nasměruje ho dál. Nastavíte ji jedním řádkem v souboru .htaccess.

Krok 1: Vytvořte chybovou stránku

Vytvořte obyčejný soubor HTML, například 404.html, a nahrajte ho přes FTP do kořenové složky webu (složka web). Stránka by měla obsahovat:

  • srozumitelné sdělení, že stránka neexistuje nebo byla přesunuta,
  • odkaz na úvodní stránku a na hlavní části webu (menu),
  • případně vyhledávací pole nebo kontakt,
  • stejný vzhled (logo, barvy) jako zbytek webu, aby návštěvník poznal, že je stále u vás.

Jednoduchý příklad:

<!DOCTYPE html>
<html lang="cs">
<head>
  <meta charset="utf-8">
  <title>Stránka nenalezena</title>
</head>
<body>
  <h1>Stránka nenalezena (404)</h1>
  <p>Stránka, kterou hledáte, neexistuje nebo byla přesunuta.</p>
  <p><a href="/">Zpět na úvodní stránku</a></p>
</body>
</html>
Tip

Odkazy na chybové stránce pište s absolutní cestou od kořene webu (/, /kontakt/, /obrazky/logo.png), nikoli relativně. Chybová stránka se totiž zobrazuje na libovolné adrese, i v hluboko zanořených složkách, a relativní odkazy by nefungovaly.

Krok 2: Nastavte ErrorDocument v .htaccess

  1. Připojte se přes FTP (viz Jak se připojit k webhostingu pomocí FTP) a otevřete soubor .htaccess ve složce web. Pokud neexistuje, vytvořte ho podle návodu Jak vytvořit soubor .htaccess.
  2. Přidejte řádek:
    ErrorDocument 404 /404.html
  3. Soubor uložte a nahrajte zpět na server.

Cesta za číslem chyby je vždy od kořene webu a začíná lomítkem. Pokud máte chybovou stránku ve složce, napište například /chyby/404.html. Může jít i o skript PHP (/404.php), který vykreslí stránku dynamicky.

Upozornění

Nezadávejte úplnou adresu s https://. Server by pak návštěvníka na chybovou stránku přesměroval a prohlížeč i vyhledávač by dostal kód 200 místo 404. Vyhledávače by neexistující adresy dál indexovaly.

Vlastní stránky pro chyby 403 a 500

Stejným způsobem nastavíte i další chyby. Chyba 403 znamená zakázaný přístup (např. ke složce bez úvodního souboru nebo k zaheslované části webu), chyba 500 je vnitřní chyba serveru, nejčastěji chyba ve skriptu nebo v .htaccess.

ErrorDocument 403 /403.html
ErrorDocument 404 /404.html
ErrorDocument 500 /500.html

Stránku pro chybu 500 udělejte co nejjednodušší – čisté HTML bez PHP a bez závislosti na databázi, protože právě ty mohou být příčinou chyby.

Krok 3: Otestujte

  1. Do prohlížeče zadejte neexistující adresu na svém webu, např. https://vasedomena.cz/neexistuje-test. Měla by se zobrazit vaše stránka.
  2. Ověřte, že server vrací správný kód. V prohlížeči otevřete nástroje pro vývojáře (F12), záložku Síť (Network), stránku znovu načtěte a u prvního požadavku zkontrolujte stav 404.
  3. Vyzkoušejte i adresu ve složce (např. https://vasedomena.cz/slozka/neexistuje), abyste ověřili, že se správně načítají obrázky a styly.

Poznámka pro WordPress a jiné redakční systémy

Poznámka

WordPress má vlastní chybovou stránku v souboru 404.php uvnitř šablony (motivu). Všechny neexistující adresy zpracovává sám a ErrorDocument se u nich neuplatní. Vzhled chybové stránky upravte v šabloně (ideálně v podřízené šabloně, aby změny nezmizely při aktualizaci) nebo pomocí pluginu. Podobně se chovají i další redakční systémy a e-shopy (Joomla, PrestaShop). ErrorDocument zde použijte jen pro chyby 403 a 500.

Nejčastější chyby

  • Stále se zobrazuje výchozí stránka serveru – zkontrolujte, zda je soubor 404.html na správném místě, zda se .htaccess nahrál (viz Co dělat, když chybí soubor .htaccess) a vymažte cache prohlížeče.
  • Chybová stránka se zobrazí bez obrázků a stylů – v souboru jsou relativní cesty. Přepište je na absolutní od kořene webu.
  • Po přidání řádku web hlásí chybu 500 – v .htaccess je překlep. Vraťte předchozí verzi a řádek zkopírujte znovu.

Nenašli jste co hledáte?

Obraťte se na nás.
Odpovíme nejpozději do 24 hodin.

Napsat podpoře