Jan Štráfelda - Průvodce online -projektem
Praha/Mělník  |  776 678 044  |  jan@strafelda.cz  |  Pošlete mi poptávku

Relativní URL

Jako relativní URL se na internetu označuje webová adresa, která není v odkazu zapsána kompletně, tj. včetně protokolu a většinou ani domény serveru, ale jen částečně. Cíl odkazu pak závisí na umístění odkazující stránky. Kromě toho, že to šetří psaní, to přináší i další výhody, například web odkazy zapsanými relativně lze snadno přestěhovat na jinou doménu – a odkazy i tak zůstanou funkční.

Absolutní URL

Opakem relativní URL je tzv. absolutní adresa. Ta, zapsaná s protokolem a doménou, může vypadat například takto:

https://www.example.cz/directory/file.htm

Ať takový odkaz napíšete kamkoliv, bude fungovat. Zapíšete ho do jakékoliv stránky na svém webu, pošlete ho e-mailem, vložíte ho do PDF souboru – stále se přes něj člověk dostane na příslušnou stránku.

Příklady relativních URL

Relativní odkaz, naproti tomu, bude správně fungovat jen v případě, že se nezmění jeho umístění proti umístění odkazované stránce. V příkladech dále se odkazuji na HTML stránku, ale stejně to funguje i při odkazování na jiné typy souborů, třeba na obrázky nebo PDF dokumenty.

Relativní URL v rámci adresáře

Zapíšeme-li relativní URL v odkazu takto, předpokládáme, že se odkazující stránka nalézá ve stejném adresáři:

file.htm

Odkaz do podadresáře

Kdyby naše odkazující stránka ležela přímo v rootu webu (v kořenovém adresáři domény), a potřebujeme se odkázat na stránku ležící v adresáři, pak relativně odkazujeme takto:

directory/file.htm

Tj. řkáme prohlížeči, že se musí nejdříve ponořit do adresáře directory a v něm teprve hledat soubor file.htm.

Odkaz o úroveň výše

Kdyby však naše odkazující stránka ležela v nějakém podadresáři adresáře directory, třeba directory/subdirectory, musíme prohlížeči říci, aby v cestě k cílovému souboru nejdříve skočil o úroveň výše. To uděláme dvěma tečkami na začátku, takto:

../file.htm

Podobně můžeme skočit i o dvě úrovně výše (kdy se odkazující stránka nacházela v podadresáři podadresáře):

../../file.htm

Relativní URL počítaná z rootu webu

Na stránky na stejné doméně lze také odkazovat s lomítkem na začátku. Lomítko prohlížeči říká, aby cestu začal v kořenovém adresáři a pak pokračoval po jednotlivých adresářích až k danému souboru. Při tomto zápisu relativní adresy tedy nezáleží na tom, kde přesně se na daném webu odkazující stránka nachází. Důležité je, že leží na stejné doméně:

/directory/file.htm

Adresa nezávislá na protokolu

Pokud na začátku relativní adresy uvedeme dvě lomítka, prohlížeč si pak doplní protokol sám podle toho, na jakém protokolu stránka reálně běží.

//www.example.cz/directory/file.htm

Relativní odkazy v rámci stránky

Adresa stránky může také obsahovat tzv. fragment, který se zapisuje za mřížkou #. Prohlížč pak sroluje na dané místo na stránce. Na fragment se můžeme odkázat absolutně, tj. zapsat celou adresu stránky s protokolem, doménou, adresáři, mřížkou a jménem fragmentu. Nebo, pokud se odkazujeme z dané stránky, stačí zapsat samotný fragment:

#fragment

Tak mám například na tomto webu naprogramovaný tzv. table of contents, obsah stránky s odkazy na jednotlivé nadpisy, který můžete vidět v úvodu této stránky.

Nyní už je vám nejspíš jasné, že pokud se potřebujete relativně odkázat na fragment nacházející se na jiné stránce, uděláte to takto (pokud tedy leží ve stejném adresáři jako odkazující stránka):

file.htm#fragment

K čemu jsou relativní adresy užitečné

Za prvé, šetří psaní. Vývojáří jsou líní, asi jako marketéři Emotikon: úsměv

Za druhé, relativní adresy umožňují určitou nezávislost kódu na umístění stránky. Pokud třeba dostanete za úkol naplnit  pomocí WYSIYWG editoru obsahem web, který se zatím nachází na nějaké prozatímní vývojové doméně, rozhodně použijte relativní adresy začínající lomítkem.

Při spouštění webu se jen vše přenese na finální doménu a nebude třeba všechny odkazy znovu upravovat. Totéž platí i o cestách k obrázkům a dalším odkazovaným souborům.

Mohli byste samozřejmě rovnou použít absolutní URL, ale pak by vám adresy nefungovaly na té vývojové doméně. Nešlo by tedy jednoduše zkontrolovat, že jste neudělali nějaký překlep.

Zaujal jsem vás? Přihlašte se do mailingu a mé další texty už vám neuniknou:

 

Zprávy posílám cca 8 × ročně. Odhlásit se můžete kdykoliv. Více informací.



Nezávazná poptávka

  (volitelné)