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.cz a http://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.
Přidat na X jedním klikem Sledovat autora na platformě XPokud 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.
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.
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:
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:
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.
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.
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í
-
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.
-
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čů.
-
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.
-
Ř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á.
-
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).
-
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.