Co je HTTP 301 a kdy použít trvalé přesměrování
HTTP 301 je stavový kód, kterým server oznamuje, že se požadovaná stránka nebo jiný zdroj trvale přesunul na novou URL adresu. Prohlížeč po obdržení odpovědi 301 automaticky načte novou adresu uvedenou v hlavičce Location. Návštěvník se tak dostane na správnou stránku, i když klikl na starý odkaz. Vyhledávač zároveň dostává jasný signál, že má původní URL postupně nahradit novou a převést na ni signály spojené s indexací a odkazy.
Kód 301 se anglicky označuje jako Moved Permanently, tedy trvale přesunuto. Slovo trvale je podstatné. Přesměrování dává smysl ve chvíli, kdy se ke staré adrese už nechcete vracet. Pokud je změna pouze dočasná, například kvůli krátké odstávce nebo časově omezenému testu, vhodnější bývá HTTP 302.
Jak HTTP 301 funguje:
- Návštěvník nebo robot požádá o starou URL: Může jít o kliknutí na odkaz, zadání adresy do prohlížeče nebo návštěvu vyhledávacího robota.
- Server vrátí stavový kód 301: Spolu s ním odešle hlavičku
Location, ve které je uvedená nová cílová adresa. - Klient načte novou adresu: Prohlížeč přesměrování běžně provede automaticky. Uživatel zpravidla jen uvidí, že se adresa v řádku prohlížeče změnila.
- Vyhledávač zpracuje trvalý přesun: Google a další vyhledávače používají 301 jako silný signál, že cílová URL má být považována za hlavní, tedy kanonickou verzi obsahu.
Technicky může odpověď vypadat jednoduše: server vrátí řádek HTTP/1.1 301 Moved Permanently a pod ním například Location: https://example.cz/nova-stranka/. Samotný obsah staré stránky už není potřeba zobrazovat. Důležitá je správná cílová adresa a to, aby na ní server v ideálním případě odpověděl kódem 200.
Kdy se přesměrování 301 používá:
Nejčastějším případem je změna adresy konkrétní stránky. Představte si článek na adrese /blog/stary-nazev/, který přejmenujete a přesunete na /blog/novy-nazev/. Bez přesměrování by lidé přicházející ze starých odkazů narazili na chybu 404. S kódem 301 se dostanou přímo na nový článek.
Stejný princip se používá při redesignu webu, změně struktury kategorií, migraci na novou doménu nebo sloučení několika podobných stránek do jedné kvalitnější. Běžné je také sjednocení variant domény s www a bez www nebo přesun z nezabezpečeného HTTP na HTTPS. Cílem je, aby každá část obsahu měla jednu preferovanou adresu a ostatní varianty na ni vedly.
Ve WordPressu lze 301 nastavit pomocí specializovaného pluginu, pravidlem na serveru nebo vlastním kódem. U menšího webu bývá plugin pohodlný, protože přesměrování spravujete z administrace. U větší migrace je často čistší připravit pravidla přímo v konfiguraci serveru a před spuštěním je hromadně otestovat.
HTTP 301 v praxi:
Řekněme, že e-shop zruší produktovou kategorii /panske-boty/ a nahradí ji přesnější kategorií /panska-obuv/. Stará URL už může být v Googlu, v záložkách zákazníků i na cizích webech. Přesměrování 301 zachová cestu návštěvníka a pomůže vyhledávači pochopit, že nový cíl nahrazuje původní stránku.
Jiným příkladem je sloučení dvou článků, které odpovídají na téměř stejný dotaz. Po vytvoření jedné lepší stránky se slabší článek přesměruje na relevantní výslednou verzi. Nestačí ale poslat každou zrušenou stránku na homepage. Cíl má odpovídat původnímu záměru návštěvníka. Pokud adekvátní náhrada neexistuje, může být poctivá chyba 404 nebo stav 410 lepší než zavádějící přesměrování.
Při přesunu celého webu se obvykle připravuje mapa starých a nových URL. Každá důležitá stará adresa by měla vést rovnou na nejbližší odpovídající nový obsah. Po nasazení je potřeba zkontrolovat stavové kódy, cíle, interní odkazy, sitemapu a kanonické URL. U rozsáhlejší tvorby nebo redesignu webu je právě tato kontrola jedním z kroků, které rozhodují, zda migrace proběhne bez zbytečné ztráty návštěvnosti.
Nejčastější chyby u přesměrování 301:
- Řetězec přesměrování: Adresa A vede na B a teprve B na C. Každý další krok zpomaluje načtení a komplikuje procházení webu. Lepší je přesměrovat A rovnou na C.
- Smyčka: A vede na B a B zpět na A. Prohlížeč pak stránku vůbec neotevře a zobrazí chybu o příliš mnoha přesměrováních.
- Nesouvisející cíl: Starý článek o konkrétním tématu vede na homepage nebo jinou obecnou stránku. Uživatel nedostane to, co čekal, a vyhledávač může přesměrování vyhodnotit jako málo užitečné.
- Zastaralé interní odkazy: Přesměrování funguje, ale menu a články stále odkazují na staré URL. Interní odkazy je lepší změnit přímo na finální adresu, aby se zbytečně nevytvářel mezikrok.
- Použití 301 pro dočasnou změnu: Pokud se původní stránka brzy vrátí, trvalý signál není vhodný. V takové situaci použijte dočasné přesměrování.
Proč je HTTP 301 důležité:
Dobře nastavená 301 chrání uživatelský zážitek i kontinuitu webu. Staré odkazy nepřestanou ze dne na den fungovat, návštěvníci nekončí na chybové stránce a vyhledávač dostává srozumitelnou informaci o změně. To je důležité hlavně u stránek, které už získaly zpětné odkazy, návštěvnost nebo pozice ve výsledcích hledání.
301 ale není kouzelné tlačítko, které automaticky zachrání každou migraci. Nová stránka musí být dostupná, tematicky odpovídat původnímu obsahu a vracet správný stavový kód. Přesměrování by mělo vést jedním krokem a zůstat aktivní dostatečně dlouho, ideálně bez plánovaného návratu ke staré adrese. Po větší změně je rozumné sledovat chyby procházení, indexaci a organickou návštěvnost.
Časté otázky:
Jaký je rozdíl mezi HTTP 301 a 302?
HTTP 301 označuje trvalý přesun. Vyhledávač má časem nahradit původní URL novou. HTTP 302 označuje dočasné přesměrování, při kterém se předpokládá, že se původní adresa ještě vrátí. Volba proto nezávisí na tom, jak dlouho nastavení zabere, ale na skutečném záměru změny.
Přenese 301 SEO hodnotu staré stránky?
Správně nastavené trvalé přesměrování pomáhá převést signály spojené se starou URL na nový relevantní cíl. Výsledek ale závisí i na podobnosti obsahu, kvalitě cílové stránky, interních odkazech a celkovém provedení migrace. Není dobré slibovat pevné procento přenesené hodnoty.
Jak ověřit, že přesměrování funguje?
Zkontrolujte, že stará URL vrací skutečně kód 301, hlavička Location obsahuje správný cíl a finální stránka odpovídá kódem 200. Současně ověřte, že nevznikl řetězec nebo smyčka. Pro jednorázovou kontrolu stačí nástroj na stavové kódy, pro větší web je vhodný crawler.
Je vhodné přesměrovat všechny chyby 404 na homepage?
Ne. Hromadné přesměrování nesouvisejících adres na homepage mate návštěvníky a neposkytuje jim odpovídající obsah. Přesměrujte jen tehdy, když existuje smysluplná náhrada. Jinak ponechte správně zpracovanou stránku 404, případně použijte stav 410 u obsahu, který byl záměrně odstraněn.