Absolútna cesta vs. relatívna cesta
5 min čítania
Pri vytváraní webových stránok sa často stretávame s cestami. Cesty definujú, kde sa nachádzajú súbory HTML, obrázky alebo iný obsah, keď sú prepojené na našej webovej stránke.
Aby sme pochopili absolútnu alebo relatívnu cestu, musíme definovať, čo je to cesta.
Cesta je entita; v našom prípade, pri vytváraní webových stránok, je to podsúbor, adresár alebo adresa webovej stránky, ktorá špecifikuje jedinečnú polohu v hierarchickej štruktúre adresárov alebo webových stránok.
Hierarchická štruktúra Windows
C:/
├── Users/
│ └── michal/
│ ├── Downloads/
│ ├── Documents/
│ └── Development/
│ └── Web.Technologies.Course/
│ ├── images/
│ │ ├── logo.png
│ │ ├── blog_image.png
│ │ └── map.png
│ ├── pages/
│ │ ├── about.html
│ │ ├── blog.html
│ │ └── contact.html
│ └── index.html
└── Windows/
└── súbory a adresáre operačného systému
Hierarchická štruktúra v Linux/MacOS/UNIX
/
├── Users/
│ └── michal/
│ ├── Downloads/
│ ├── Documents/
│ └── Development/
│ └── Web.Technologies.Course/
│ ├── images/
│ │ ├── logo.png
│ │ ├── blog_image.png
│ │ └── map.png
│ ├── pages/
│ │ ├── about.html
│ │ ├── blog.html
│ │ └── contact.html
│ └── index.html
└── Systém/
└── súbory a adresáre operačného systému
Ako som už spomenul, cesty môžu byť dvoch druhov:
- absolútne
- relatívne
Aby sme mohli definovať, čo tieto typy ciest predstavujú, je potrebné definovať pojem pracovný adresár.
Každý program alebo webová stránka definuje konkrétny adresár, v ktorom máte pracovať ako pracovný adresár.
Je to adresár, z ktorého vaše IDE alebo server, na ktorom sa nachádzajú vaše podprogramy, identifikuje cesty k podprogramom alebo súborom vo vašom zdrojovom kóde.
Absolútna cesta
Absolútna cesta (úplná cesta) obsahuje všetky informácie o entite a jej umiestnení. Toto umiestnenie začína v koreňovom adresári a končí umiestnením entity s jej úplným názvom.
Koreňové adresáre sa líšia v závislosti od operačného systému. Linux/MacOS/UNIX má koreňový adresár na začiatku adresárovej štruktúry, označený znakom /. V systéme Windows je koreňový adresár označený názvom disku, napríklad C:\ alebo D:\, Z:\.
Pracovný adresár neovplyvňuje absolútnu cestu; preto sa nachádza adresár, v ktorom pracujeme, a súbor, ktorý práve upravujeme.
Keď sa pozrieme na príklady hierarchických štruktúr, zistíme, že absolútna cesta k súboru logo.png je nasledovná:
Windows:
C:\Users\michal\Development\Web.Technologies.Course\images\logo.png
Linux/MacOS/UNIX
/Users/michal/Development/Web.Technologies.Course/images/logo.png
URL
https://drobny.dev/blog
https://www.paneurouni.com/en/international-relations/projects-and-partnerships/
Predchádzajúce príklady ukazujú, že koreňový adresár je C:/ pre Windows a / pre Linux/MacOS/UNIX.
Absolútne cesty sú ľahšie pochopiteľné. Jasne definujú umiestnenie podsúboru, ale práca s nimi pri vytváraní webových stránok je nevhodná, pretože keď nahrajete svoj projekt na server, absolútne umiestnenie podsúboru sa zmení. Absolútne cesty, ktoré definujú umiestnenie na vašom počítači, nebudú fungovať.
URL
Špecifickým typom absolútnej cesty je URL. Ako sa uvádza na w3cschools.com, URL je iný výraz pre webovú adresu.
URL môže byť zložená zo slov (napr. w3schools.com) alebo z adresy internetového protokolu (IP) (napr. 192.68.20.50).Väčšina ľudí zadáva názov pri surfovaní, pretože názvy sa ľahšie pamätajú ako čísla.
Štruktúra URL
scheme://prefix.domain:port/path/filenameVysvetlenie:
scheme – definuje typ internetovej služby (najbežnejšie je http alebo https)
prefix – definuje predponu domény (predvolená pre http je www)
domain – definuje názov internetovej domény (napr. w3schools.com)
port – definuje číslo portu na hostiteľovi (predvolené pre http je 80)
path – definuje cestu na serveri (ak je vynechaná: koreňový adresár stránky)
filename – definuje názov dokumentu alebo zdrojaDefinícia z w3schools.com
Relatívna cesta
Relatívna cesta je entita, ktorá definuje umiestnenie podsúboru vzhľadom na váš pracovný adresár. Relatívna cesta nezohľadňuje informácie potrebné na určenie pracovnej adresy vzhľadom na koreňový adresár. Určuje iba cestu z vášho pracovného adresára do podadresára alebo súboru.
Aby sme mohli pracovať s relatívnymi cestami, musíme pochopiť význam jedného bodu . a dvoch bodov ...
Relatívne cesty používajú najskôr tento zápis, za ktorým nasleduje oddeľovač v systéme Windows \ a v systéme Linux\MacOS\UNIX /. Jeden bod označuje aktuálny adresár a dva body označujú nadradený adresár.
Uvedieme príklad, aby sme lepšie pochopili, čo presne relatívne cesty definujú. Ak definujeme náš pracovný adresár ako C:\Users\michal\Development\Web.Technologies.Course alebo /Users/michal/Development/Web.Technologies.Course, potom relatívna cesta k podsúboru logo.png je ./images/logo.png.
Hoci relatívne cesty poskytujú menej informácií o umiestnení súboru, je s nimi ľahšie pracovať a používajú sa pre ich všeobecnosť v odkazoch na podsúbory v zdrojovom kóde.