Як ви знаєте, в параметрі href тега () необхідно вказувати шлях до файлу, на який робиться посилання.
Багато пишуть щось на зразок http://somesite.ru/catalog/doc.html. Так, ніхто не сперечається, це працює. Але є одне «але». Розглянемо на прикладі.

Нехай ваш сайт розміщувався, наприклад, на якомусь безкоштовному хостингу і його адреса був наступний: http://fsite.freehosting.ru.
На сервері лежить близько 100 документів. І ось ви вирішили перенести свій сайт на інший домен,
нехай це буде платний хостинг в зоні ru: http://site.ru. Що ж, скрізь тепер міняти http://fsite.freehosting.ru на http://site.ru?
Так, завдяки таким редакторам як homesite, це можливо. Але це не вихід.
Припустимо, що перш ніж заливати сторінку на сервер, ви перевіряєте її працездатність
на своєму домашньому сервері apache (тим, хто ще не знає що таке «домашній сервер» — сюди(Установка і настройка сервера apache), і замість http://localhost треба скрізь буде писати http://site.ru. Погодьтеся це, принаймні, незручно.

Вихід полягає в тому, що б, при вказування шляху до файлу, враховувати не його положення на сайті, а його положення на сервері.

Абсолютний шлях

Візьмемо, наприклад, файл doc.html, який знаходиться за адресою: http://somesite.ru/catalog/doc.html. На сервері, як відомо, знаходиться папка www. Як ми бачимо з адреси, у цій папці знаходиться папка catalog, і вже в ній знаходиться файл doc.html.

Якщо, при вказування шляху до файлу, перед адресою поставити, то це буде аналогічно наступного: корневая_директория_на_севере/www/шлях до файлу.
Тобто, http://somesite.ru/catalog/doc.html аналогічно наступного: /catalog/doc.html.
Отже, коли перед адресою варто, то це означає, що «відлік» починається з директорії www.
Тепер замість http://localhost/index.html з будь-якого документа можна писати /index.html.
А ось що б дістатися до директорії cgi треба писати так: /cgi-bin/шлях до файлу.

Шляхи, створені способами, описаними вище, називається абсолютними, оскільки вказується абсолютний (повний) шлях до файлу на сервері.

Відносний шлях

Існують також відносні шляхи, які зазначаються щодо самого документа, звідки йде посилання.
Наприклад, якщо в doc.html створити посилання newcat/new.html, то це означає, що файл new.html знаходиться в каталозі newcat, який, у свою чергу, знаходиться в тому ж каталозі, що й файл doc.html. Як бачите, цей шлях зазначений щодо файлу doc.html. Де б він не знаходився, шлях newcat/new.html завжди справедливий, якщо файл doc.html і каталог newcat будуть знаходитися на одному рівні (тобто в одному каталозі).

Також щодо якогось документа можна піднятися на директорію вгору. Для цього необхідно написати ../.
Наприклад, є каталог big, в ньому знаходяться два каталогу: primary і secondary. В каталозі primary лежить, вже знайомий нам файл doc.html; а в каталозі secondary знаходиться файл new.html. Для того, щоб з файлу doc.html зробити посилання на файл new.html, то потрібно написати ../secondary/new.html. А ось якщо каталог big знаходиться в каталозі www, то шлях до файла new.html можна визначити і так: /big/secondary/new.html

Замість висновку варто сказати, що використання абсолютних і відносних шляхів значно полекшує роботу веб майстрам, будь то новачок або професіонал. Так що використовуйте цю можливість, як кажуть, на повну котушку, і намагайтеся уникати шляхів типу http://site.ru/catalog/file.file, або ж, принаймні, вдавайтеся до їх допомоги як можна рідше.