Показать полную графическую версию : как грамотно указать путь в ссылке
Приветствую!
У меня на сайте временами происходит глюк с отображением картинок и применением CSS.
Сайт на PHP. Есть подозрение, что некорректно указываю пути в ссылках. Например структура сайта такова - корневая директория содержит каталоги 1,2,3,PIC (помимо index.php :) ). В последнем собственно картинки. В index.php инклюдом вставляются файлы из всех каталогов. Вставку картинок указываю так img src="PIC/qqq.gif". А может грамотнее писать www.primer.ru/PIC/qqq.gif ?
Иногда вижу такие записи <link rel="Stylesheet" href="/_yandex-catalogue.css">. А как понять наличие такой косой черты ?
Prisoner
12-12-2006, 12:58
Косая черта это знак корня (aka корневая директория). Корень это та директория от которой ведется весь отсчет, это та директория где находятся ваши index.php и директории 1, 2, 3, PIC. Дело в том, что пути есть абсолютные и относительные в зависимости от точки отсчета. К примеру www.site.com/PIC/qqq.gif это абсолютное задание адреса. Лично я не считаю это удобным - громоздко, да и с индексацией можно круто обломаться сменив в силу каких-то причин адрес. Гораздо проще делать адресацию относительно корня. В случае приведенного примеря Яндекса css-файл лежит на одном уровне (часто говорят "рядом") с index.php о чем говорит символ корня. Если символа коря нет, то считается что адрес задается относительно той директории где мы находимся.
К примеру есть структура:
/imgs/jpg/*.jpg
/imgs/gif/*.gif
/imgs/gif/old/*.jpg
/imgs/gif/old/show_old.php
/index.php
Если зайти по адресу www.site.com/index.php то он может выдавать нам адреса любого рода (хоть с корнем, хоть без) потому что он сам в корне. А вот если по адресу www.site.com/imgs/old/show_old_gif.php (пусть скрипт выводит список старых гифок) то генерируя адреса вида src="imgs/gif/*.gif" будем говорить броузеру ссылаться на src="www.site.com/imgs/old/imgs/gif/*.gif" потому что задаем адреса относительно.
DMGaster
12-12-2006, 12:59
Иногда вижу такие записи <link rel="Stylesheet" href="/_yandex-catalogue.css">. А как понять наличие такой косой черты ?
У меня сайта на статических страницах, но если на php действуют те же правила что и на статике, то косая черта обозначает местоположение файла или папки относительно корня сайта.
img src="PIC/qqq.gif"
так тоже можно делать, но не всегда.
Приведу примеры:
каталоги 1,2,3,PIC (помимо index.php)
пусть есть ссылка на картинку в PIC, а файл где эта ссылка лежит в папке 1, то линк будет выглядеть так: img src="/PIC/qqq.gif"
Если файл со ссылкой в корневом каталоге, то: img src="PIC/qqq.gif" или img src="/PIC/qqq.gif"
Если картинка в том же каталоге, что и файл со ссылкой, то: img src="qqq.gif"
Но ИМХО это всё верно в статике...
у меня на одной странице (index.php) есть php вставки так вот там путь прописывается, как у вас: <?php require_once('SSI/title.htm'); ?>
А может грамотнее писать www.primer.ru/PIC/qqq.gif ?
Может и грамотнее, но а вдруг вы имя сайта поменяете
Prisoner
12-12-2006, 13:02
Который раз убеждаюсь, что тема путей не может не быть многословной :)
Vi-P, короче склихасоски, если передний слеш стоит - браузер прилепит слева только текущий хост (домен), если нет - хост + текущую директорию...
DMGasterphp вставки так вот там путь прописываетсяinclude_path :)
Prisoner
12-12-2006, 17:44
Дешево и сердито... +1.
vadimiron
13-12-2006, 00:42
Который раз убеждаюсь, что тема путей не может не быть многословной
Уггу, вечная тема :)
Vi-PУ меня на сайте временами происходит глюк с отображением картинок и применением CSS.
В чём глюк заключается? Не отображаются картинки?
В чём глюк заключается? Не отображаются картинки?
Ну да. Временами. Один раз из 10 глючит.
vadimiron
15-12-2006, 18:59
Vi-P
Один раз из 10 глючит
Тут пути тогда не причём. Другие 9 раз картинка же находиться.
Может скорей браузер глючит. Или например, вы изменили местонахождение картинки, а в кеше браузера осталась старая страница, поэтому он её и грузит со старым адресом картинки.
Советую к браузеру установить спец расширения, которые помогают просматривать посылаемые запросы, так можно каждый запрос для каждой картинки просматреть и понять, почему браузер не то грузит (а вернее ничего не грузит).
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.