Úvod

Každý den kliknou miliony lidí na krátké odkazy typu lix.li/a1B2c3, aniž by se kdy zamysleli nad tím, co se odehrává mezi kliknutím a načtením stránky. Ve skutečnosti se v tom zlomku sekundy toho děje poměrně dost: server musí okamžitě najít správnou dlouhou URL, přesměrovat prohlížeč a zaznamenat data o kliknutí – to vše během milisekund. V tomto článku se podíváme na to, jak zkracovače odkazů fungují pod kapotou: jaké technologie stojí v jejich pozadí, jak se generují krátké kódy, odkud pocházejí analytická data a proč je to celé mnohem složitější, než se na první pohled zdá.

Co je zkracovač odkazů

Zkracovač odkazů je služba, která převádí dlouhou URL (například https://example.com/products/category/electronics/smartphones?ref=newsletter&utm_campaign=summer2026) na kompaktní odkaz typu lix.li/xY7z9Q. Když uživatel klikne na krátký odkaz, je automaticky přesměrován na původní dlouhou adresu. Zní to jednoduše, ale v pozadí stojí kompletní infrastruktura: databáze, algoritmy pro generování unikátních identifikátorů, systém přesměrování a analytický engine.

Základní mechanismus: HTTP přesměrování

Jádrem každého zkracovače odkazů je HTTP přesměrování – standardní mechanismus webového protokolu, který prohlížeči sděluje: „obsah, který hledáte, se nachází na jiné adrese." Když někdo klikne na krátký odkaz, proběhne následující:

  1. Prohlížeč odešle požadavek na server zkracovače (například lix.li/xY7z9Q).
  2. Server ve své databázi vyhledá, jaká dlouhá URL odpovídá kódu xY7z9Q.
  3. Server odpoví HTTP stavovým kódem 301 nebo 302 spolu s hlavičkou Location, která ukazuje na původní URL.
  4. Prohlížeč automaticky odešle nový požadavek na dlouhou URL a načte cílovou stránku. Celý proces trvá jen několik milisekund a pro uživatele zůstává neviditelný.

301 nebo 302: jaký je rozdíl

Volba stavového kódu přesměrování je důležité technické rozhodnutí, které ovlivňuje chování prohlížečů i vyhledávačů:

  • 301 (Moved Permanently) – trvalé přesměrování. Prohlížeče a vyhledávače si jej uloží do cache a v budoucnu mohou přistupovat přímo na cílovou adresu. To mírně snižuje zátěž serveru zkracovače, ale ztěžuje přesné sledování kliknutí, protože opakované návštěvy už serverem nemusí procházet.
  • 302 (Found / Temporary Redirect) – dočasné přesměrování. Každé kliknutí musí povinně projít přes server zkracovače, což umožňuje kompletní a přesné sledování kliknutí. Právě proto většina služeb zaměřených na analytiku – včetně Lix.li – používá 302.

Jak se generují krátké kódy

Jednou z nejzajímavějších inženýrských výzev je vygenerovat krátké, unikátní a nekonfliktní kódy pro miliony odkazů. Existuje pro to několik běžných přístupů.

1. Inkrementální čítač s kódováním base62

Jedna z nejpoužívanějších metod. Každému novému odkazu je přiřazeno pořadové číslo (1, 2, 3…) z automaticky se zvyšujícího čítače v databázi. Toto číslo se následně převede z desítkové soustavy do base62 – číselné soustavy používající 62 znaků: a–z, A–Z, 0–9. Proč zrovna 62 znaků? Protože všechny jsou bezpečné pro použití v URL a poskytují kompaktní výsledek. Například číslo 125 000 se v base62 promění pouze na 4 znaky. Díky tomu zůstávají kódy krátké a zároveň rostou předvídatelným způsobem s rostoucím čítačem.

2. Hashování

Další přístup spočívá ve výpočtu hashe (například MD5 nebo SHA-256) z původní URL a použití prvních několika znaků jako krátkého kódu.