Redirect 301: Kód trvalého přesměrování

Co je Redirect 301 a proč je klíčový

Redirect 301 je trvalé přesměrování z jedné URL na druhou. Oznamuje prohlížečům, robotům a LLM indexům, že obsah se trvale přemístil. Výsledkem je přenesení signálů (odkazová autorita, uživatelské signály, kanonikalita) na cílovou URL, což je zásadní při migracích webu, konsolidaci duplicitních adres, přechodu na HTTPS, změně struktury URL nebo slučování obsahu.

HTTP stavové kódy: 301 vs. další alternativy

  • 301 Moved Permanently: trvalý přesun, přenáší PageRank/link equity (postupně); prohlížeče si přesměrování ukládají do mezipaměti.
  • 302 Found / 307 Temporary Redirect: dočasné, nevhodné pro dlouhodobé SEO změny.
  • 308 Permanent Redirect: trvalé jako 301, zachovává metodu požadavku (např. POST). Pro migrace URL je plnohodnotnou alternativou 301.

Vliv na SEO, AIO/AEO a LLM

  • Kanonikalita: 301 pomáhá konsolidovat signály na jednu definitivní URL, minimalizuje rozdrobení hodnocení.
  • Indexace: vyhledávače postupně nahradí starou URL novou; strukturovaná data a interní odkazy by měly směřovat na cílovou URL.
  • AIO/AEO/LLM: asistenční a odpovědní systémy mapují zdroje podle stabilních URL; 301 zkracuje „halucinace“ o starém obsahu a udržuje aktuální entitu a fakta.
  • UX a měření: správné 301 snižuje chybovost, zlepšuje Core Web Vitals (odstraněním řetězení) a udržuje konzistentní UTM měření.

Typické scénáře použití

  • HTTP → HTTPS (povinně pro celý web).
  • www ↔ non-www (vyberte jednu kanonickou verzi).
  • Trailing slash (s lomítkem vs. bez, zvolte jednotnou politiku).
  • Diakritika a velikost písmen (normalizujte URL; webové servery mohou být case sensitive).
  • Staré produktové/kategorie → nové (mapování po položkách).
  • Parametry (odstranění duplicitních parametrů, UTM se většinou zachovává).

Apache (.htaccess) – příklady bez řetězení

RewriteEngine On
# 1) HTTP → HTTPS
RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

# 2) non-www → www (po pravidle pro HTTPS)
RewriteCond %{HTTP_HOST} !^www.
RewriteRule ^ https://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

# 3) Odstranění koncové lomítka kromě adresářů
RewriteCond %{REQUEST_URI} .+/$
RewriteRule ^(.+?)/$ /$1 [R=301,L]

# 4) Konkrétní mapování starých URL → nové
Redirect 301 /stary-produkt-123 /novy-produkt-abc

Nginx – ekvivalentní pravidla

# 1) HTTP → HTTPS
server { listen 80; server_name example.com www.example.com;
return 301 https://$host$request_uri; }

# 2) non-www → www
server { listen 443 ssl; server_name example.com;
return 301 https://www.example.com$request_uri; }

# 3) Konkrétní přesměrování
location = /stary-produkt-123 { return 301 /novy-produkt-abc; }

CDN a hosting: Cloudflare, Netlify, Vercel, S3/CloudFront

  • Cloudflare: Page Rules/Redirect Rules – definujte Source URL pattern a 302/301, preferujte jedno pravidlo pro HTTP→HTTPS a jedno pro www/non-www, aby nevznikala řetězení.
  • Netlify: soubor _redirects – např. /stare /nove 301, http://* https://:splat 301!.
  • Vercel: vercel.json"redirects": [{"source":"/stare","destination":"/nove","permanent":true}].
  • S3/CloudFront: Routing Rules na S3 nebo Lambda@Edge/Functions při složitějších mapováních.

Aplikace a CMS: přesměrování na úrovni aplikace

  • PHP: header('Location: /nova-url', true, 301); exit; (preferujte serverová pravidla kvůli výkonu).
  • WordPress: využijte server + jednotnou politiku permalinků; pluginy pouze na jednorázová mapování.
  • Headless/JS: nikdy nepoužívejte jen meta refresh/JS přesměrování – je pomalé a nestandardní.

Migrace webu: plán a mapování

  1. Inventarizace URL: exportujte všechny indexované a navštěvované URL (logy, analytics, sitemap, crawl).
  2. Mapování 1:1: každé staré URL přiřaďte nejrelevantnější nové (obsahově nejbližší). Vyhněte se přesměrování na homepage.
  3. Sitemapy: publikujte novou sitemapu; staré URL ze sitemap odstraňte.
  4. Interní odkazy: aktualizujte na cílové URL (nepřipouštějte přesměrovací skoky).
  5. Strukturovaná data: upravte url, sameAs, image, mainEntityOfPage na nových adresách.
  6. Crawl budget: minimalizujte řetězení a zbytečné 404/410 chyby.

Ověření a monitoring po nasazení

  • HTTP hlavičky: curl -I https://example.com/stare → očekávejte HTTP/1.1 301 a Location: https://example.com/nove.
  • Řetězení: preferujte max. 1 přeskok. Kontrolujte nástroji (crawler) a logy.
  • Cacheování: 301 si prohlížeče zapamatují; při dočasném testování použijte 302/307 a teprve potom 301.
  • Měření: sledujte 404, organickou návštěvnost, pozice, počet indexovaných stránek a dobu odezvy.

Politiky URL: konzistence a normalizace

  • Koncové lomítko: zvolte jednotný styl a vynucujte ho 301.
  • Lowercase: preferujte malá písmena (pokud je server case-sensitive) a přesměrujte varianty.
  • Indexové soubory: /adresar/index.html → /adresar/ nebo pevná politika bez lomítka.
  • Parametry: zachovejte UTM (?utm_source=…) a důležité filtry; zbytečné parametry kanonikalizujte.

Multijazyčné a vícedoménové nasazení

  • Hreflang: udržujte 1:1 vztahy mezi jazykovými mutacemi po přesunu.
  • Subdomény vs. podsložky: při konsolidaci používejte hromadná pravidla a sitemapu pro každou jazykovou větev.
  • Propojení entit: aktualizujte odkazy v sameAs (např. na sociální profily, Wikidata) a interní reference.

Výkon a bezpečnost

  • Eliminujte řetězce: každý přeskok zvyšuje latenci; slučte „HTTP→HTTPS→www→bez lomítka“ do jednoho přeskoku (správné pořadí pravidel).
  • HSTS: po přechodu na HTTPS aktivujte HSTS, aby klienti rovnou používali HTTPS (pozor na subdomény).
  • Mixed content: po přesunu na HTTPS opravte všechny HTTP zdroje (obrázky, skripty, CSS).

Časté chyby

  • Smyčky (loop): špatně nastavená pravidla způsobují nekonečné přesměrování.
  • Použití 302 místo 301 při trvalých změnách.
  • Přesměrování na nerelevantní stránku (ztráta tematických signálů).
  • Nezachování query stringu u pravidel (pokud je potřeba).
  • Nevhodné načasování (nejdřív spuštění nového webu bez 301, pak pravidla → vzniknou 404 a ztráta crawl budgetu).

Kontrolní seznam před spuštěním

  1. Má každá stará URL přiřazenou cílovou URL?
  2. Je HTTP→HTTPS a www/non-www řešeno v jediném přeskoku?
  3. Jsou interní odkazy a kanonické tagy aktualizované?
  4. Jsou upraveny strukturované data a sitemapky?
  5. Ověřeno curl -I, crawlerem a testem rychlosti?
  6. Nastaveno monitorování 404/500, logy a alerty?

Měření úspěchu po migraci

  • Index Coverage a počet URL v indexu na nové struktuře.
  • Organický traffic a konverze podle cílových stránek (odstraněné řetězce by měly zlepšit metriky).
  • Chybovost: pokles 404/5xx a přesměrovacích řetězců.
  • Rychlost: porovnání TTFB a CLS/LCP před a po.

Shrnutí

Redirect 301 je základem technického SEO a AIO/AEO. Umožňuje bezpečně přesunout hodnotu a význam z původních URL na nové, udržet kanonikalitu, zlepšit uživatelskou zkušenost a pomoci vyhledávačům i LLM správně interpretovat strukturu webu. Úspěch stojí na kvalitním mapování 1:1, odstranění řetězení, konzistentní politice URL a důsledném monitoringu po nasazení.