Jaký je rozdíl mezi URL a URI v praxi?
Autor: Redakce Domeny.ForSale Zveřejněno
Stručně: URI je identifikátor zdroje, zatímco URL je identifikátor, který navíc určuje způsob přístupu ke zdroji a jeho umístění. V klasickém dělení je každé URL zároveň URI, ale ne každé URI je URL. Adresu webové stránky tedy můžete správně označit jako URL i jako URI — v běžném hovoru bývá označení „URL“ srozumitelnější.
Co znamená URI?
URI je zkratka pro Uniform Resource Identifier, tedy jednotný identifikátor zdroje. Zdrojem může být webová stránka, fotografie, dokument, položka zpřístupněná prostřednictvím API, ale také objekt, který nelze jednoduše stáhnout z internetu.
Hlavní funkcí URI je identifikace: určuje, o jaký zdroj jde. Samotný identifikátor nemusí říkat, kde se zdroj nachází ani jak k němu získat přístup.
Příkladem je urn:isbn:9780131103627. Tento identifikátor označuje publikaci pomocí čísla ISBN. Neodkazuje na konkrétní knihkupectví, knihovnu ani soubor ke stažení. Určuje publikaci, ale neuvádí její internetovou adresu.
URI je tedy širší pojem než adresa stránky. Jde o kategorii identifikátorů, do níž patří i dobře známé adresy začínající na https:.
Co znamená URL?
URL je zkratka pro Uniform Resource Locator, tedy jednotný lokátor zdroje. Určuje umístění zdroje a mechanismus přístupu k němu, například prostřednictvím HTTPS.
Příkladem URL je https://example.com/poradnik. Obsahuje informace, které prohlížeč potřebuje, aby se mohl pokusit získat přístup k dané stránce:
https— schéma, které v tomto případě určuje použití protokolu HTTPS;example.com— název hostitele, zde v podobě doménového jména;/poradnik— cestu určující zdroj v rámci tohoto hostitele.
Adresa může obsahovat také port, parametry dotazu a fragment. V příkladu https://example.com/poradnik?jezyk=pl#wprowadzenie je část jazyk=pl parametrem dotazu a uvod identifikuje fragment dokumentu. Fragment se na server neposílá jako součást požadavku HTTP; zpracovává ho software na straně uživatele.
URL nezaručuje, že zdroj existuje nebo je dostupný. Adresa může vést na odstraněnou stránku, vyžadovat přihlášení nebo odkazovat na server, který neodpovídá. Stále však zůstává URL.
V čem přesně spočívá rozdíl?
Nejsnáze si ho zapamatujete pomocí dvou otázek: URI odpovídá na „co identifikujeme?“, zatímco URL navíc umožňuje určit, „kde a jak se ke zdroji dostat?“. Nejde o dvě oddělené kategorie: URL je zvláštním případem URI.
| Příklad | Typ | Co sděluje? |
|---|---|---|
https://example.com/zdjecie.jpg | URL a URI | Určuje umístění fotografie a způsob přístupu prostřednictvím HTTPS. |
urn:isbn:9780131103627 | URI typu URN | Identifikuje publikaci, ale neuvádí její umístění na síti. |
URN, tedy Uniform Resource Name, je identifikátor založený na názvu v určitém jmenném prostoru. Ve druhém příkladu je tímto prostorem ISBN. K pochopení webových adres nemusíte URN používat, pomáhá však ukázat, proč URI není jen jiné označení pro URL.
Pomůže přirovnání ke knize a jejímu místu v polici. Číslo ISBN slouží k identifikaci konkrétního vydání, zatímco informace o knihovně, regálu a polici ho pomáhají najít. Jde pouze o analogii: internetové URL může současně identifikovat zdroj a určovat jeho umístění.
Který pojem používat v praxi?
Když žádáte o adresu stránky, odkaz na produkt nebo adresu souboru, používejte označení URL. V tomto kontextu je přesné a nemusíte vysvětlovat širší kategorii identifikátorů.
V technické dokumentaci se můžete setkat s označením URI i tehdy, když ukázková hodnota vypadá jako běžná adresa HTTPS. Nemusí to být chyba: autor používá širší pojem nebo název zavedený v daném standardu. Pokud se pole v API jmenuje redirect_uri, zachovejte tento název přesně — neměňte ho na redirect_url jen proto, že předáváte adresu stránky.
Je také dobré rozlišovat úplnou adresu a její části. Samotné example.com je doménové jméno, zatímco /poradnik je relativní odkaz, jehož význam závisí na základní adrese. Ani jeden z těchto zápisů sám o sobě neposkytuje stejné informace jako úplné URL https://example.com/poradnik.
Proč se tato označení někdy zaměňují?
Klasické dělení, v němž URI zahrnuje URL a URN, dobře vysvětluje základní rozdíl. Terminologie ve standardech však není zcela jednotná: standard WHATWG URL, používaný v prostředí prohlížečů, pracuje s pojmem URL a definuje vlastní pravidla zpracování adres.
Při programování jsou proto důležitější než samotné označení požadavky konkrétní knihovny nebo API: zda přijímá úplnou adresu, zda podporuje relativní odkazy a jaká schémata povoluje. Když vyplňujete pole „adresa stránky“, zadejte úplné URL; při implementaci integrace si ověřte požadovaný formát v její dokumentaci.
