Jan Štráfelda - Průvodce internetovými projekty
celá ČR (přes video)  |  776 678 044  |  jan@strafelda.cz

Přesměrování 301

Přesměrování (anglicky redirect) je způsob, jak sdělit prohlížeči, že jsme obsah požadované URL adresy přesunuli jinam. Prohlížeč pak automaticky načte tuto novou adresu.

Existuje celá řada různých typů přesměrování. Konkrétně přesměrování 301 pak prohlížeči říká, že obsah byl na novou adresu přesunut trvale.

Příklad přesměrování

Řekněme, že jsme museli přesunout obsah stránky na jinou URL adresu a stará adresa tím přestala fungovat. Přijde-li sem návštěvník třeba z odkazu na jiném webu, nic nenajde a proto nejspíš zase rychle odejde. Přitom na webu pro něj hledaný obsah stále máme.

Správným řešením je trvalé přesměrování 301 – pokud ho pro starou adresu nastavíme, adresa v prohlížeči se návštěvníkovi změní na novou adresu a příslušný obsah se mu zobrazí.

Typy přesměrování

Přesměrování uživatele lze na webech řešit několika různými způsoby:

Přesměrování na straně serveru (server-side)

Kliknete na odkaz vedoucí na adresu, která již neexistuje, ale má nastavené přesměrování. Váš prohlížeč si tedy pomocí HTTP protokolu na serveru vyžádá danou stránku, ale server nevrátí její obsah, pouze pošle informaci o přesměrování (opět pomocí HTTP protokolu). Prohlížeč si následně vyžádá na serveru novou adresu a tu zobrazí. Celé to proběhne tak rychle, že uživatel obvykle nic nepostřehne.

Podle toho, jakou přesně odpověď server vrací, se serverová přesměrování rozdělují dále. První řádek této odpovědi totiž obsahuje číslo stavu, podle kterého prohlížeč ví, jak požadavek dopadl. A jednou z možných odpovědí je právě 301 Moved Permanently, tj. že stránka byla trvale přesunuta na jinou adresu.

Z dalších možných odpovědí jsou nejdůležitější:

  • 302 – dočasné přesměrování, které prohlížeči říká, že stránka nyní existuje na jiné adrese, ale příště si ji má vyžádat opět na této adrese
  • 307 – nová podoba nahrazující dočasné přesměrování 302
  • 308 – novější specifikace permanentního přesměrování, než je 301

E-book za mail

Získejte podrobný návod Jak na e-mail marketing (52 stran). Více informací.

Žádný spam, jen užitečný obsah. Newsletter posílám cca 8× ročně. Odhlásíte se kdykoliv.

Přesměrování po načtení stránky v prohlížeči (client-side)

Jen pro informaci, přesměrování může být také přímo v obsahu stránky, kterou prohlížeč ze serveru dostane. A to buď ve formě speciálního meta tagu refresh, nebo pomocí JavaScriptu. Podrobněji to vysvětluje Yuhů na Jakpsatweb.cz.

Pro nás je důležité, že přesměrování v prohlížeči už se dnes používají jen ve specifických situacích – správný způsob řešení přesměrování je ten serverový. A většinou jde o permanentní přesměrování, tedy s kódem 301. Tak to doporučují i vyhledávače. To proto, že serverová přesměrování jsou rychlejší, spolehlivější a fungují i bez vykreslení stránky (které roboti vyhledávačů stále dělají jen omezeně).

Kdy potřebujeme přesměrování 301

Po přesměrování 301 sáhněte vždy, když se obsah stránky přesouvá na jinou adresu. To se typicky děje v těchto případech:

  • změnili jste v administraci URL stránky
  • změnili jste název stránky a redakční systém tím automaticky vygeneruje jinou adresu (což je ale chyba redakčního systému, svévolně by to dělat neměl)
  • přesunuli jste stránku do jiného adresáře (pokud nepoužíváte redakční systém)
  • přesunuli jste stránku do jiné sekce (některé nesprávně navržené redakční systémy v adrese stránky odráží její umístění ve struktuře)
  • přesunuli jste web na jinou doménu či subdoménu
  • změnili jste strukturu webu, například v souvislosti s redesignem webu
  • nechali jste si převést web na jiný redakční systém a ten odlišně pracuje s tvorbou adres
  • převedli jste web na zabezpečený protokol HTTPS (ano, i přidáním onoho „s“ do adresy se změnila adresa všech stránek webu)
  • spojujete více stránek do jedné, která lépe obsáhne celé téma

Typickým příkladem, kde to často dělává potíže, mohou být některé nesprávně navržené e-shopy. Když zde přesunete produkt do jiné kategorie, nebo třeba kategorii přejmenujete, změní se jejich adresa a ještě se navíc žádné přesměrování nevytvoří automaticky. Pokud už takové e-shopové řešení musíte používat, je třeba si na to vytvořit proces a přesměrování pokaždé zajistit ručně.

Co kdybychom nepřesměrovali?

Pokud byste udělali některé z těchto změn na webu a původní adresy nepřesměrovali, uživatelé by chodili na původní adresy přes odkazy na jiných webech – a nic by se jim nezobrazilo, pouze chybová stránka 404. Část by se možná pokusila obsah vyhledat na webu jiným způsobem, ale většina by web zbytečně znechuceně opustila. A nejde jen o zpětné odkazy, staré adresy mohou mít lidé uložené v záložkách prohlížeče, mohou být obsažené ve starších newsletterech, v PDF souborech či být někde vytištěné ve firemních materiálech, na takový odkaz může návštěvníky přivádět placená reklama apod.

A jak už nejspíš tušíte, nejde jen o negativní zkušenost návštěvníků. Správně nastavená přesměrování mají obrovský význam i z hlediska optimalizace pro vyhledávače.

Přesměrování 301 a SEO

Přesměrování 301 mohou značně ovlivňovat výsledky ve vyhledávačích. To proto, že pro crawlery vyhledávačů to funguje stejně jako pro prohlížeč návštěvníka. Nastavíme-li při změně adresy stránky přesměrování správně, robot snáze nalezne přesunutý obsah a zkrátí se tak výpadek přesunutého obsahu z výsledků vyhledávání.

Ztráta zpětných odkazů

Zpětné odkazy vedoucí na danou stránku jsou pro vyhledávač důležitým signálem, podle kterého se rozhoduje o umístění stránky ve výsledcích. Pokud při změně adresy nevytvoříme přesměrování, vyhledávač odkazy na původní stránku zahazuje (protože ta už z jeho pohledu neexistuje). A přesunutá stránka tak začíná úplně z nuly, jakoby právě nově vznikla.

Pokud však přesměrování vytvoříme, link juice (hodnocení stránky vyhledávačem) se předá z původní adresy na novou. Do roku 2016 Google nepředával všechen link juice, byl zde asi 15% útlumový faktor. Pak to ale změnili, zřejmě v souvislosti s masivními přechody webů na HTTPS. A nyní se, pokud vím, předává vše. Stejně jako u dočasných přesměrování 302 či 307 (která dříve link juice nepředávala).

Přesměrování při redesignu webu

Zajistit permanentní přesměrování 301 je důležité zejména při kompletním redesignu webu, kdy se často změní adresy všech stránek a přestanou pak fungovat všechny zpětné odkazy. Kdybychom staré adresy nepřesměrovali na nové, o tyto odkazy bychom přišli a web by se brutálně propadl ve vyhledávání. Takový propad, i když později přesměrování všech stránek správně nastavíte, může trvat i půl roku.

Ale pozor! Platí to i pro všechny předchozí redesigny. Pokud právě nechystáte první redesign webu, nezapomeňte si ze starého redakčního systému také vytáhnout přesměrování nastavená před redesignem. A přenést je do nového redakčního systému. Abyste zbytečně nepřišli o odkazy, které vznikly před dvěma či třemi redesigny.

Pozdě, říkáte? Že na to nikdo nemyslel? Možná vám pomůže návod, jak získat staré adresy stránek vašeho webu z webového archivu Archive.org. Je to mimochodem osvědčená linkbuildingová technika, takové sbírání nízko visícího ovoce. Existuje pro to také parádní nástroj IAWM extractor.

Příliš mnoho nenalezených stránek

I pokud by nám nešlo o zpětné odkazy, je třeba se přesměrováními již zaindexovaného webu zabývat. Platí totiž, že pokud web vrací příliš často chybu 404 (tj. informaci, že danou stránku nenalezl), zhoršuje se mu umístění ve vyhledávačích.

Přesměrování jako řešení duplicitního obsahu

Pomocí přesměrování 301 se také řeší problém duplicity obsahu. Typickým příkladem bývá zobrazování téhož obsahu na adrese https://www.example.cz i na adrese https://example.cz (s www a bez něj). Z pohledu vyhledávače jsou to totiž dvě různé adresy. Stejně, jako kdyby se třeba lišily jen protokolem – https://example.czhttp://example.cz.

Takový stav vám škodí, protože vyhledávač si vybere jednu z adres a tu bude zobrazovat ve výsledcích vyhledávání. Přitom některé zpětné odkazy vám budou vznikat na první verzi, jiné na ty ostatní – vyhledávačem ignorované, takže jejich potenciál zahodíte. Pokud však přesměrujeme všechny varianty na námi preferovanou podobu, link juice se předá a máme po problému. A noví návštěvníci navíc začnou budovat odkazy už jen na výslednou variantu (jinam se nedostanou).

Přesměrování obrázků

Na toto se při redesignech webů běžně zapomíná. Ale pro obrázky platí totéž, co platí pro textový obsah stránky. Zejména, jde-li o obrázky, které se dobře umisťují ve vyhledávání obrázků. Taková vyhledávání představují na některých webech významný zdroj návštěvnosti. Při změně jejich URL je proto potřeba přesměrovat starou adresu na novou.

Přesměrování vs. kanonizace

Lidé občas váhají, kdy mají sáhnout po přesměrování a kdy použít kanonizaci URL. Je to jednoduché – canonical tag použijte, pokud potřebujete stránku na webu zachovat, ale její obsah je totožný, či hodně podobný obsahu jiné stránky na webu. Typicky třeba u filtrů produktů, kde různá nastavení filtrů mohou produkovat hodně podobné stránky, které se ale liší adresou. A přitom zde přesměrování 301 použít nemůžeme (protože by lidé výsledky filtrování neviděli).

Adresy stránek nikdy neměňte. Nikdy. Opravdu nikdy. Ale pokud přece jen musíte, zajistěte přesměrování 301 ze starých adres na nové. A počítejte s mírným propadem.

Pokud můžete, adresy neměňte

Pamatujte si, že i když přesměrování nastavíte správně a ihned po přesunu stránky jinam, bude to mít ve vyhledávači své dopady. Zejména v případě přesměrování většího počtu adres (třeba při přesunu celého webu na jinou doménu či při přesunu webu na HTTPS či kvůli změně redakčního systému) se stává, že se celý web dramaticky propadne ve výsledcích vyhledávání. A zpět se pak vrací postupně v rámci týdnů až měsíců. Většinou si také mírně pohorší pozice.

Je to jeden z dobrých důvodů, proč adresy webu vůbec neměnit. Pokud už je však změnit z objektivních důvodů musíme, nezbývá než čekat, až změnu vyhledávače „přechroustají“. A mezitím se věnovat získávání dalších odkazů, které pozice stránek webu zase posílí.

Jak dlouho by mělo přesměrování fungovat

Ideálně permanentně. Pokud však máte významné důvody, proč přesměrování časem zrušit (třeba že nechcete stále platit starou doménu), Google radí ponechat přesměrování 301 funkční alespoň jeden rok.

Tweet Johna Muellera z Google, který doporučuje ponechat přesměrování funkční trvale
Tweet Johna Muellera z Google, který doporučuje ponechat přesměrování funkční trvale.

Nastavení přesměrování v CMS

To je první možnost, kde jak přesměrování vytvořit. Většinou na to v redakčním systému bývá speciální sekce. Správa přesměrování je jednoduchá. Do formuláře zadáte původní adresu a tu novou. Zbytek už zajistí redakční systém sám – uloží si přesměrování do tabulky v databázi a jakmile se někdo pokusí zobrazit si stránku na původní adrese, pošle mu serverovou hlavičku s informací o přesměrování.

Poznámka: WordPress stále neumí správu přesměrování 301 nativně, ale existují pro něj pluginy, které tuto možnost přidávají. Například Redirection. Poraďte se se svým vývojářem.

Správa přesměrování v redakčním systému Adaptic Admin
Takto jednoduše vypadá správa přesměrování v našem redakčním systému Adaptic Admin.

Chytřejší redakční systémy umí přesměrování 301 vytvářet automaticky při všech změnách adres. Například pokud změníte název stránky, redakční systém se vás zeptá, zda chcete upravit i adresu. A po potvrzení automaticky vytvoří přesměrování 301 z původní adresy na novou. Tohle chování je důležité, protože s redakčním sytémem obvykle pracují lidé, kteří o přesměrováních nic nevědí.

Nastavení přesměrování na úrovni serveru

Přesměrování 301 lze také nastavit rovnou na serveru. Takové přesměrování je nejrychlejší, protože ho server udělá ještě dříve, než ke slovu vůbec pustí redakční systém nebo nějaké další skripty. Například pro nejpoužívanější server Apache se to dělá pomocí konfiguračního souboru .htaccess, což je jednoduchý textový soubor, který se nahraje do hlavního adresáře webu. Využívá se k tomu modul Apache jménem mod_rewrite, který je dnes již podporován naprostou většinou hostingů. Nastavit takové přesměrování by měl umět váš developer – a není to nic komplikovaného.

Pomocí přesměrování přímo na serveru se nejčastěji řeší výše popsané duplicty obsahu na úrovni domény (třeba varianta s www a bez), přesměrování domény na jinou doménu, přesměrování z HTTP verze webu na HTTPS apod.

Příklad 1 – přesměrování jedné stránky

Pokud do souboru .htaccess přidáte následující kód, stará stránka bude trvale přesměrována na stránku novou:

Redirect 301 /stara.htm https://www.example.cz/nova.htm

Příklad 2 – přesměrování na verzi s www

Podobným způsobem lze v souboru .htaccess nastavovat přesměrování celých adresářů, obsah ze staré domény na novou, nebo třeba nastavit výše zmiňované přesměrování adres bez www na adresy s www:

RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\.(.*)
RewriteRule (.*) https://www.%{HTTP_HOST}/$1 [R=301,L]

Příklad 3 – přesměrování na verzi bez parametru

Často se přesměrování také používá k odstranění nějakého zbytečného URL parametru z adresy stránky. Typickým příkladem může být parametr fbclid.

RewriteEngine on
RewriteCond %{QUERY_STRING} ^(.*)&?fbclid=[^&]+&?(.*)$ [NC]
RewriteRule ^/?(.*)$ /$1?%1%2 [R=301,L]

Další možnosti přesměrování v .htaccess souborech

Perfektní nápovědu najdete v generátoru přesměrování pro .htaccess soubory.

Vytvoření přesměrování ve skriptu

Přesměrování 301 lze nastavit také přímo v PHP skriptu, i když nepoužíváte přímo redakční systém. Takto nastavený skript odešle HTTP hlavičku, která prohlížeč o přesměrování informuje. Pro realizaci zaúkolujte své programátory.

<?php
header('Location: https://www.strafelda.cz', true, 301);
die('Pro pokračování prosím <a href="https://www.strafelda.cz">klikněte sem</a>.');
?>

Kromě PHP samozřejmě funguje nastavování přesměrování 301 i v dalších serverových jazycích.

Jak přesměrování zkontrolovat

  • Nejjednodušší je zadat si do prohlížeče původní adresu → měla by se vám místo ní načíst nová adresa.
  • Můžete také zkusit některý z nástrojů, jež vypisují všechna přesměrování, ke kterým došlo. Tím si ověříte, že nejde o několikanásobná přesměrování. Dobře mi funguje HttpStatus, který umí zpracovat až 100 adres najednou.
  • Pokud správnost přesměrování řešíte častěji, existují speciální rozšíření do prohlížečů. Například pro Chrome se jmenuje Redirect Path.
  • Potřebujete-li zkontrolovat odkazy na celém webu, zda někde neodkazujete na přesměrování, zkuste nástroje jako Screaming Frog či dnes již trochu zastaralý freeware Xenu. Na předchozím odkazu najdete podrobný návod, jak Xenu k odhalování přesměrování na webu používat.
  • Skvělé reporty pro celý web najdete i v placeném nástroji Ahrefs, v sekci „Site Audit“.

Nejčastější chyby při přesměrovávání

  1. Přesměrování úplně chybí

    Nejčastější chyba. Pokud administrátoři webu neumí s přesměrováními správně pracovat, často stránku prostě přesunou a nic nenastaví. Se všemi důsledky popisovanými výše.

  2. Přesměrování na nerelevantní obsah

    Pokud po redesignu už nikde na webu nemáte relevantní obsah k původní adrese, nikam nepřesměrovávejte. Návštěvníkům i robotům se zobrazí chybová stránka 404 a z ní pochopí, že tu daný obsah už nenajdou.

    Ostatní postupy vedou jen k jejich zmatení, zejména tolik oblíbené přesměrování na úvodní stránku webu. Zdánlivě o daného člověka tímto trikem nepřijdete, ale ve skutečnosti většinu lidí jen naštvete. A to platí i pro roboty vyhledávačů.

  3. Zbytečné přesměrování

    Někteří administrátoři sice nastaví přesměrování, ale už neopraví odkazy na danou stránku v obsahu webu. Takový odkaz pak vede na přesměrování, které teprve uživatele dostane na finální adresu.

    Ano, funguje to, ale jak nedávno kdosi vtipně glosoval na Facebooku, je to, jako byste v realitě poslali člověka na vzdálenou adresu, kde si pak na vratech přečte novou adresu pobočky. Máte-li možnost, určitě odkazy v administraci přepište na ty finální (alespoň na svých webech). A přesměrování vytvořte kvůli těm zbývajícím odkazům.

  4. Řetězení přesměrování

    Dejte si pozor, abyste nevytvořili přesměrování na stránku, která pak také přesměrovává. Vznikají tím tzv. řetězce přesměrování. Do určitého počtu přesměrování fungují, ale pak způsobují potíže. Každé přesměrování, kterého se v rámci řetězce můžete zbavit, se počítá.

  5. Smyčky přesměrování

    Ještě horším případem je, když ze stránky A přesměrujete na stránku B a z té opět na stránku A. Prohlížeč se zacyklí a uživateli se nic nezobrazí. Smyčky přesměrování jsou zákeřné v tom, že se obtížně zjišťují, protože v rámci smyčky může být vloženo i více přesměrování (stránka A → stránka B → stránka C → stránka A).

  6. Odkazy na přesměrování v mapě stránek

    Přesměrování nejsou reálné stránky s obsahem. Proto by se odkazy na ně neměly nacházet na mapě stránek ani v souboru Sitemap.xml (rozšířená mapa stránek pro roboty vyhledávačů).

Nejčastější dotazy k pojmu Přesměrování 301

01 Má smysl dodělat přesměrování i po několika letech?

Určitě. Pokud jste na přesměrování při redesignu webu zapomněli, dává smysl je doplnit i po mnoha letech. Je totiž pravděpodobné, že na původní adresy webu vedly zpětné odkazy, lidé tyto odkazy mohou mít stále uložené někde v záložkách apod. Vytvořením přesměrování si tedy nový web pravděpodobně polepší ve vyhledávačích a zvýší se mu návštěvnost.

O autorovi

Jsem Jan Štráfelda a působím jako průvodce online projekty. Potřebujete předělat web či e-shop? Nebo posunout internetový marketing? Poradím s obojím. 14 let budování vlastní digitální agentury mě skvěle vyškolilo – a rád se o zkušenosti podělím.

S čím také umím pomoci:

Své znalosti sdílím i na LinkedIn. Přidejte se k 3 663 marketérům, kteří z nich již pravidelně těží.