• доступно о веб-разработке
20.10.2012 Технологии

Абсолютные и относительные пути

Ключевая тема, всю важность которой понимают далеко не все начинающие веб-разработчики. Стоит расставить все точки над «i» в самом начале.

Когда вы задаете путь к файлу на сервере, вы можете задать его в двух видах:

  • Абсолютном /folder/subfolder/file.jpg
  • Относительном subfolder/file.jpg
В первом случае путь идет от корня сайта. Об этом говорит обратная косая черта «/» первым символом адреса.
Во втором случае — отчет идет от текущей страницы сайта.
То есть важно понимать что относительный путь меняется вместе с местонахождением пользователя.
Поясню на примере.
Вы заходите на страницу http://ваш-сайт.рф/index.html.
Корень сайта на сервере расположен в папке сайта. Например, /home/номер_пользователя_на_хостинге/www/ваш-сайт.рф.
Когда вы обращаетесь к сайту через домен в браузере, файл /index.html вызывается из корня по адресу /home/номер_пользователя_на_хостинге/www/ваш-сайт.рф/index.html. 
Но вот ситуация. Вы прописали картинке адрес следующего вида:
<img src="img/picture.jpg" alt="Моя картинка"/>
Папка img находится по физическому адресу /home/номер_пользователя_на_хостинге/www/ваш-сайт.рф/img.
Если вы заходите из корня, то относительный адрес накладывается на текущий. Страница /index.html находится в корне, поэтому img прибавляется к корню и получается /img.
Но стоит вам зайти на какую-нибудь страницу, которая будет расположена по адресу папкой ниже, например, http://ваш-сайт.рф/подпапка/index.html, как изображение с относительным путем не отобразится. Потому что в данном случае оно будет искать свой источник уже в подпапке.
Поэтому практически всегда принято использовать абсолютные пути во избежание путаницы и неразберихи.

 

Поделиться

Комментарии Правила дискуссии

Читайте ранее:
Задний фон

Что придает сайту выразительность? Уверен, что с ваших губ уже готово соскочить слово, что на картинке выше. Но не только...

Закрыть