Portál AbcLinuxu, 4. května 2025 10:39
Asi všichni, co kdy přičuchli k UNIXu nebo Linuxu, znají otřepaný vtip s #rm -rf /
. Já se dnes přesvědčil, že lomítko může dělat problémy i jinde.
Přemýšlím, kolik už jsem viděl kurzů a knih o základech HTML (moc), kolikrát jsem základy něčeho tak všeobecně známého měl ve škole (3x, na střední, na jádře i na dopravce), ale ani v jednou jsem nenarazil na něco tak triviálního, čím jsem si dnes uříznul ostudu. Nejhorší ze všech lidských vlastností je asi blbost.
Představte si, že máte nějaký JavaScript, který se válí kdesi na serveru, a na který se potřebujete odkázat ve všech stránkách toho samého serveru. Jenže ty jsou umístěné v několika podadresářích. Jak to uděláte? Jednoduše, použijete absolutní odkaz s celou URL.
Jenže ono to jde i jinak. Modří už vědí.
No a teď si to představte obráceně - přesouváte stránky na webserveru a aktualizujete trochu obsah. A najednou to přestane načítat ten JavaScript. Proč? Máte tam přece místo URL relativní cestu, jako byla předtím. A že ten odkaz začíná lomítkem - co má být? Když se to skládá, tak dvě lomítka za sebou nevadí, ne? http://www.abclinuxu.cz/blog//gustav je přece to samé jako http://www.abclinuxu.cz/blog/gustav.
Chyba lávky. Lomítko na začátku relativního odkazu značí kořen webserveru, stejně jako / v unixovém filesystému značí kořen fs. Porovnejte si /blog/gustav a blog/gustav.
Jak prosté, milý Watsone. Jaktože jsem to doteď nevěděl?
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.