
K čemu slouží přesměrování a co je to stavový kód HTTP 301 a 302?
Stalo se vám, že jste načetli stránku, kterou dobře znáte, ale po zadání URL vás prohlížeč přemístil na jinou URL? Nebo jste chtěli navštívit stránku, ale místo ní se vám na obrazovce zobrazila chybová hláška? V prvním případě jste byli úspěšně přesměrováni pomocí některého z kódu HTTP 300. V tom druhém ne.
Jaké stavové kódy pro přesměrování existují?
Přesměrování je funkce, která prohlížeči sděluje, že původní obsah stránky byl přesunut na novou URL adresu. Stavových kódů pro přesměrování existuje více:
- HTTP 301 Moved Permanently prohlížeči sděluje, že obsah z URL byl na novou adresu přesměrován trvale
- HTTP 302 Moved Temporarily prohlížeči sděluje, že obsah z URL byl na novou adresu přesměrován dočasně
- HTTP 307 funguje stejně jako 302; sděluje, že stránka byla dočasně přesunuta na jiné místo
- HTTP 308 funguje stejně jako 301; sděluje, že obsah z URL byl na novou adresu přesunut trvale
K čemu přesměrování slouží?
Přesměrování je požadavek na server, aby návštěvníky ze staré adresy URL přesměroval na novou adresu. Pokud majitel přesune obsah webu z jedné URL na novou bez patřičného přesměrování, zobrazí se každému, kdo se pokusí původní stránku navštívit chybová zpráva 404 Page Not Found. To není žádoucí. Přesměrování zamezuje tomu, aby se návštěvníci webu proklikávali na neexistující stránky.
Jakmile se uživatel pokusí navštívit starou URL adresu, stavový kód 301 nebo 302 ho přesměruje na nové umístění. Děje se to tak rychle, že si toho obvykle nemá možnost všimnout. Na přesměrované stránce se ocitne okamžitě. Jediné, co zaznamená je, že adresa URL je jiná než ta, kterou prve zadal.
Kdy použít přesměrování pomocí kódu HTTP 301, 302 a jejich alternativ?
Přesměrování využijete například v případě, kdy potřebujete upravit nějakou již zaindexovanou stránku s vysokou návštěvností, ale neaktuálním obsahem. Smazat ji by znamenalo přijít o návštěvnost a pokud URL změníte, vyhledávače ji vyhodnotí jako novou stránku. V takovém případě je nejlepší volba původní URL přesměrovat pomocí 301 Moved Permanently, či HTTP 308. O návštěvnost z původní stránky nepřijdete, ale její URL bude odkazovat na nový, aktuální obsah.
Vhodné je na přesměrování myslet i při přechodu na jiný redakční systém. Může se totiž stát, že způsob, jakým výrazy v URL zapisuje, bude odlišný, od vašeho původního. V takovém případě by původní, byť dobře zaindexovaná URL byla k ničemu.
Přesměrování pomocí stavového kódu HTTP 302 či 307 se využívá tehdy, kdy majitel webu chce své uživatele odkázat na novou stránku s funkčním, aktualizovaným obsahem. Na rozdíl od kódu 301 ale 302 prohlížeči říká, že změna adresy je jenom dočasná a původní obsah se na přesměrovanou URL vrátí. Prohlížeč tedy ví, že si má obsah za nějaký čas vyžádat opět na původní adrese. Využití 302 nachází zpravidla při přepracovávání nebo aktualizaci webu.
Nejčastěji se přesměrování používá:
- po úpravách URL stránky
- po přemístění stránky do jiného adresáře
- po změně struktury webu (např. přesunem některých URL na jinou doménu či subdoménu)
- při převodu webu na zabezpečený protokol HTTPS
- při sloučení více stránek do jedné
- pokud dojde ke změně názvu hlavní domény
Vliv přesměrování na SEO
Přesměrování může ovlivňovat zobrazování stránek ve výsledcích vyhledávačů, které pro roboty prohlížečů fungují stejně jako pro návštěvníka. Pomocí správného přesměrování snáze naleznou přesunutý obsah, čímž se zkrátí výpadek takového obsahu z výsledků vyhledávání.
Přesměrování také nachází využití jako obrana před duplicitním obsahem. Vyhledávače totiž za duplicity považují například i to, že se stránka zobrazuje na doméně s nebo bez WWW. Pomocí stavového kódu 301 či 302 vyhledávač pochopí, kterou verzi stránky má zaindexovat a kterou ne. Tím se zamezí případným mylným vyhodnocením.
Jak přesměrování nastavit?
- Pokud svůj web provozujete na Windows hostingu, vložte následující kód do souboru config v hlavním adresáři webu, což je hlavní konfigurační XML soubor ASP.NET aplikace.
<?xml version=“1.0″ encoding=“utf-8″ ?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name=“HTTP to HTTPS redirect“ stopProcessing=“true“>
<match url=“(.*)“ />
<conditions>
<add input=“{HTTPS}“ pattern=“off“ />
</conditions>
<action type=“Redirect“ redirectType=“Permanent“ url=“https://{HTTP_HOST}/{R:1}“ >
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
- Pokud svůj web provozujete na Linux hostingu serverů Apache nebo LiteSpeed, vložte do .htaccess souboru následující řádky:
RewriteEngine on
RewriteBase / RewriteCond %{HTTP_HOST} staradomena\.cz$
RewriteRule ^(.*)$ http://www.novadomena.cz/$1 [R=301,L]
- Pokud svoje webové stránky provozujete na WordPressu, podívejte se na článek, který tématu přesměrování na tomto redakčním systému věnoval Daniel Šenkyřík.
- Se systémem inPage je přesměrování součástí služby a nastavení je opravdu jednoduché.
Přesměrování URL na inPage je hračka!
S inPage si vytvoříte nový web snadno a rychle a přesměrování URL je v jeho přehledné administraci hračka. Nastavení přesměrování naleznete v menu v Nastavení → Přesměrování stránek.
Funkce přesměrování má tři části:
- tlačítko pro přidání nového přesměrování (oranžově)
- možnost řazení a filtrování již vložených přesměrování (žlutě)
- seznam vložených přesměrování (modře)
Vložení nového přesměrování stránek
Po kliknutí na tlačítko pro přidání přesměrování se vám objeví okno s možnostmi:
- stav zapnuto/vypnuto – přesměrování si můžete například nachystat dopředu (mít je neaktivní a zaktivnit je až později)
- zadání zdrojové stránky – např. /inpage/stranka-s-puvodni-url
- zadání cílové stránky – např. /inpage/stranka-s-novou-url
- způsob přesměrování – trvalé nebo dočasné
K jednotlivým možnostem je uvedena i nápověda, která vám s vyplněním pomůže. Po vyplnění jednotlivých polí se vám uložená přesměrování zobrazí v seznamu.
Filtrování v seznamu uložených přesměrování
Pro zjednodušení vyhledávání v seznamu nastavených přesměrování stránek si můžete ve výsledcích filtrovat a řadit výsledky dle jednotlivých možností (stav, zdrojová stránka, cílová stránka, způsob přesměrování).
Také si můžete vybrat, kolik výsledků bude na stránce zobrazeno.
Kontrola přesměrování
Správnost tvaru adresy si můžete ověřit ikonkou u každého odkazu, přes kterou se na danou stránku dostanete. Pokud se vám přesměrování nepodaří, odkazujete na původní stránku, nebo se vám zobrazuje chyba, je třeba URL adresu opravit.