Datum publikace:

Normalizace URL před migrací: lomítka, velká písmena a domény

Tři podobné kovové klíče s rozdílnými zuby a prázdná tyrkysová visačka na šedé ploše.
Co v článku najdete

V inventáři jsou adresy /katalog/, /katalog a /Katalog/. Kolega je převede na malá písmena, přidá lomítko a odstraní duplicity. Tabulka se zkrátí, ale možná právě zmizely vstupy, které měla migrace samostatně obsloužit.

Podobný zápis URL není důkaz stejného chování webu. Nejdřív zachovejte přesné vstupy a zjistěte, které rozdíly jsou podstatné. Teprve potom rozhodněte o sjednocení. Na modelu pěti adres ukážeme, co rozlišuje kontrola pokrytí migrace, co upraví standardní zpracování URL a proč ani shodný viditelný obsah sám nepotvrzuje totožnou cestu návštěvníka.

Oddělte zápis, shodu obsahu a skutečnou odpověď

Při čištění seznamu se snadno smíchají tři otázky. Jsou dva řetězce stejné? Zobrazuje se na adresách odpovídající obsah? A vede každý vstup správnou cestou na plánovaný cíl? Odpověď na jednu z nich automaticky neřeší zbývající dvě.

Google ve své dokumentaci upozorňuje, že cesty URL rozlišují velikost písmen. Pokud je server obsluhuje stejně, jde o vlastnost konkrétní implementace, kterou potřebujete znát. Tabulkový převod na malá písmena toto chování nezjistí a nevytvoří za vás přesměrovací pravidla.

Tři úrovně porovnání dvou adres
OtázkaJaký podklad potřebujeteCo nelze odvodit
Shoduje se zpracovaná URL?Úplný řetězec a pravidla parseru.Skutečný obsah odpovědi serveru.
Odpovídá obsah?Čtení skutečných stránek nebo doložených podkladů.Stejné kódy a všechny mezikroky příchodu.
Funguje plánovaný přesun?Test konkrétního původního vstupu po nasazení.Stejné chování všech podobně vypadajících variant.

V evidenci používejte přesné formulace. „Pět různých vstupů v dodaném seznamu“ není totéž jako „pět různých produktových stránek“. Nástroj pro porovnání podkladů nevyšetřuje obsah webu. Rozsah svého závěru popište už při předání nálezu.

Model: jeden katalog a pět historických vstupů

Představme si, že původní export zachytil následujících pět adres. V našem modelovém zadání mají po migraci všechny dojít na jeden schválený nový přehled. Tato obsahová shoda je předpoklad modelu, nikoli závěr získaný pouze z podobnosti názvů.

https://example.com/katalog/
https://example.com/katalog
https://example.com/Katalog/
http://example.com/katalog/
https://www.example.com/katalog/

Nový inventář obsahuje jedinou adresu https://example.com/prehled/. Mapa však zatím řeší jen první vstup:

source;target;status
https://example.com/katalog/;https://example.com/prehled/;301

Kontrola pokrytí najde jednu původní adresu pokrytou mapou a čtyři chybějící rozhodnutí. Neříká, že tyto čtyři adresy na webu určitě selžou. Říká, že předaný seznam pravidel jejich plánovaný osud nepopisuje. Server může mít další obecná pravidla, která v CSV vůbec nejsou.

Nemažte chybějící varianty z inventáře jen kvůli lepšímu souhrnu. Ztratili byste kontrolní případy potřebné pro přejímku skutečné implementace. Zjistěte, zda se mají řešit přesnými pravidly, obecnější konfigurací, nebo zda podklady obsahují chybu. Výsledek pak doložte.

Koncové lomítko v cestě nepřidávejte naslepo

V tomto modelu jsou /katalog a /katalog/ různé zpracované adresy. Kontrola je sama neslučuje a nepozná, zda se jedna na druhou přesměrovává. Hromadné doplnění lomítka do původního seznamu by proto změnilo popis vstupů ještě před jejich prověřením.

Jiný případ je prázdná cesta za samotnou doménou. Standardní URL parser může zápis bez explicitního kořenového lomítka vrátit s lomítkem. Z tohoto jednotlivého chování však neplyne, že lze přidávat lomítko ke každé libovolné cestě. Rozlišujte konkrétní část adresy, kterou upravujete.

Pokud znáte schválenou preferovanou podobu, zapište ji jako cíl nebo jako výsledek očekávaného chování. Vedle ní ponechte původní přesnou variantu pro test. Tak získáte přehled i bez zničení historického zápisu, který člověk může stále použít.

Velikost písmen posuzujte podle části URL

Naše nástroje používají standardní objekt URL. Protokol a doména se v běžném modelu zpracují do standardního zápisu, zatímco velikost písmen v cestě zůstává významná pro porovnání. Převod celého sloupce na malá písmena je tedy mnohem širší zásah než toto standardní zpracování.

Následující dva řádky se v kontrole mapy sejdou na stejném zdroji a mají totožný cíl i kód. Výsledek budou dvě upozornění na duplicitní pravidlo:

source;target;status
HTTPS://EXAMPLE.COM/katalog/;https://example.com/prehled/;301
https://example.com/katalog/;https://example.com/prehled/;301

Naproti tomu velké K v cestě původního modelu zůstává jinou adresou. Pokud má server tyto varianty sjednocovat, ověřte toto skutečné rozhodnutí a jeho implementaci. Neodvozujte ho z toho, že velká písmena v názvu domény nástroj zpracoval stejně.

HTTP, HTTPS a www jsou další samostatné vstupy

Změna velikosti písmen v názvu protokolu není totéž co změna HTTP na HTTPS. Nástroj tyto dva protokoly nepovažuje za jednu adresu. Podobně automaticky neodstraňuje www z domény. V modelovém inventáři proto zůstávají samostatnými případy.

Vývojář může použít obecnou konfiguraci pro přechod na preferovaný protokol nebo host. To je legitimní způsob implementace, ale prostá mapa jednotlivých zdrojů a cílů takové pravidlo nesimuluje. Pro jeho převzetí potřebujete konkrétní testovací vstupy a očekávané výsledky.

  • Zachovejte nejprve úplné původní adresy včetně protokolu a hostu.
  • Zapište schválenou výslednou podobu a důvod sjednocení.
  • Rozlišujte plán jednotlivých přesných URL a obecné serverové pravidlo.
  • Po nasazení zkoušejte i historické varianty, ne pouze preferovanou adresu.

Jak popsat zamýšlené pokrytí všech pěti variant

Pro názornost lze schválený výsledek našeho modelu vyjádřit pěti přesnými pravidly. Nejde o jediný možný způsob konfigurace serveru; je to srozumitelný popis toho, kam má každý konkrétní vstup dojít.

source;target;status
https://example.com/katalog/;https://example.com/prehled/;301
https://example.com/katalog;https://example.com/prehled/;301
https://example.com/Katalog/;https://example.com/prehled/;301
http://example.com/katalog/;https://example.com/prehled/;301
https://www.example.com/katalog/;https://example.com/prehled/;301

Samostatná kontrola mapy vrátí pět pravidel bez nálezu. Kontrola pokrytí proti původním pěti adresám a novému přehledu najde pět pokrytých vstupů. Toto zlepšení vzniklo doplněním doloženého plánu, nikoli vyřazením nepohodlných adres z kontroly.

V reálném projektu může mít některá varianta jiný obsah nebo vůbec nepatřit do schváleného rozsahu. Pak ji neposílejte automaticky na společný přehled. Zapište jiný odpovídající cíl, opravu podkladu nebo vědomé zrušení podle postupu pro URL bez náhrady.

Předejte testovací matici, ne požadavek „sjednotit URL“

Vývojář potřebuje vědět, které chování má zachovat nebo změnit. Věta „všechno převeďte na správnou doménu“ neříká, co se stane s velikostí cesty, parametry nebo odlišným obsahem. Každý významný rozdíl si zaslouží konkrétní příklad.

Přejímka modelového sjednocení adres
VstupSchválený výsledekCo skutečně ověřit
Cesta bez lomítkaNový přehled.Úplnou cestu z přesného původního zápisu.
Velké písmeno v cestěStejný přehled podle zadání modelu.Že pravidlo neovlivnilo jiný obsah mimo schválený rozsah.
HTTP a varianta wwwPreferovaná výsledná adresa.Odpovědi i mezikroky, které nemusely být v CSV.

Po nasazení kontrolujte přesný zdroj, skutečné kódy, další kroky a obsah cíle. Přesměrování se může skládat z obecného pravidla a pravidla konkrétní cesty. Podle schváleného zadání posuďte, zda nevznikl zbytečný řetězec; postup nabízí rozbor zkracování přesměrování.

Pracovní seskupení nemusí ničit původní hodnoty

Pro přehled si můžete vytvořit pomocný sloupec se skupinou podobných variant. V něm budou všechny katalogové vstupy pohromadě, zatímco sloupec původní URL zůstane přesný. Seskupení je pracovní pomůcka; neprohlašuje automaticky obsahovou totožnost ani nepředává hotovou serverovou konfiguraci.

Ke skupině uložte, kdo potvrdil společný cíl a z jakých podkladů vycházel. Při dalším exportu pak nebudete muset znovu hádat, proč adresy vypadají podobně a proč mají dojít na stejné místo. Do evidence nálezů patří také nevyřešené výjimky.

Parametry a fragmenty mají vlastní pravidla a v tomto modelu jsme je záměrně nepřidávali. Pokud je vaše data obsahují, navazují samostatné rozbory parametrů a fragmentů URL. Jeden globální čisticí zásah nenahradí posouzení všech částí adresy.

Protipříklad: velké písmeno může patřit jinému obsahu

První model měl výslovně zadanou společnou náhradu všech pěti variant. Zkusme nyní jiné zadání: malá cesta označuje aktuální přehled a velká cesta historický archiv. Nejde o tvrzení, že tak konkrétní web opravdu funguje; jde o ukázku, proč obsahovou shodu nesmíme předpokládat bez podkladu.

source;target;status
https://example.com/katalog/;https://example.com/prehled/;301
https://example.com/Katalog/;https://example.com/archiv/;301

Kontrola této mapy najde dva různé zdroje, každý s jediným cílem. Výsledkem jsou dvě pravidla bez nálezu. Kdybyste před analýzou převedli celou cestu na malá písmena, vytvořili byste sami dva shodné zdroje s odlišnými cíli. Oba řádky by se změnily na konflikt.

Oprava takového konfliktu nespočívá ve výběru prvního řádku. Je třeba obnovit původní rozlišující informaci a potvrdit, že zadání dvou odlišných obsahů opravdu platí. To je jiná práce než sjednocování pěti doloženě společných vstupů z prvního modelu.

Čisticí pravidlo proto vždy zkoušejte i na záměrné výjimce. Pokud má operace ponechat rozdílné dokumenty oddělené, potřebujete alespoň jeden takový případ v kontrolním vzorku. Ukázka, na které se všechno má sloučit, nemůže odhalit ztrátu rozlišení tam, kde je nezbytné.

Do pracovního postupu si uložte původní a upravený seznam a krátké vysvětlení změn. U změněné hodnoty má být dohledatelné, zda jde o standardní zpracování adresy, opravu prokazatelného překlepu, nebo vědomě schválené sjednocení. Tyto důvody nejsou zaměnitelné, i když výsledný sloupec vypadá úhledněji.

Při převzetí nového exportu ověřte, že se tato pravidla nezměnila bez vědomí týmu. Jiný tabulkový postup může znovu převést všechny cesty na malá písmena. Vrátí se pak problém, který už někdo jednou správně vyřešil, ale jeho rozhodnutí nebylo součástí dalšího předání.

Při porovnání souhrnů rozlišujte také počet vstupních řádků a počet různých zpracovaných URL. K původním pěti adresám můžete přidat šestý řádek s velkými písmeny pouze v protokolu a doméně první adresy. Kontrola pokrytí ho označí jako duplicitu seznamu a do pokrytí započítá stejnou URL jednou. Nezmizela tím další historická cesta; jde o stejný zpracovaný vstup. Tento případ se významově liší od svévolného odstranění čtyř původních variant.

Cvičení: proč po úklidu zmizely čtyři nálezy

Po převodu celého inventáře na malá písmena, HTTPS a jeden host zůstane místo pěti variant jediný vstup. Kontrola ho najde v mapě. Je tím původní model migrace úplně vyřešený?

Zobrazit řešení variant URL

Ne. Změnil se původní rozsah kontrolovaných vstupů. Vraťte přesné historické varianty, schvalte jejich osud a doložte odpovídající pravidla nebo samostatně ověřenou obecnou implementaci. Čistší souhrn po úpravě inventáře neprokazuje, že původní adresy skutečně fungují. Shodu obsahu ani veřejné HTTP odpovědi lokální porovnání samo nezjišťuje.

Smyslem čištění podkladů je zpřehlednit doložená rozhodnutí. Pokud při něm zmizí informace potřebná k ověření příchodu, byl zásah příliš široký. Uchovejte původní hodnoty a sjednocujte teprve na základě potvrzeného chování a schváleného výsledku.

Časté otázky

Mohu všechny URL převést na malá písmena?

Ne bez znalosti jejich významu. Cesta může rozlišovat velikost písmen a označovat jiný obsah. Standardní zpracování protokolu a domény není důvodem pro stejnou úpravu celé adresy. Původní vstupy zachovejte pro test.

Jsou adresy s koncovým lomítkem a bez něj stejné?

U konkrétní cesty je zdejší nástroj rozlišuje. Zda je server sjednocuje, musíte ověřit samostatně. Pozor na odlišný případ samotné domény, jejíž prázdnou cestu může standardní parser zapsat s kořenovým lomítkem.

Jak sjednotit varianty bez ztráty původních vstupů?

Ponechte přesné historické URL a vedle nich evidujte schválenou výslednou podobu. Implementaci popište konkrétními případy. Po nasazení testujte také HTTP, různé hosty a další skutečně zahrnuté varianty, ne pouze preferovanou adresu.

Navazující rozbory

Testovací doména v mapě přesměrování: jak předat produkční URL

Co kontrola mapy ještě neověří

Všechny články SEO dílny

Zdroje

Podklady a modely ověřeny 19. 10. 2026. Příklady používají modelová data, nepopisují výsledky klienta.

Obsahová revize: 20. 10. 2026.

Autor: Tomáš Stýskala

Další čtení