Не загружаются картинки

-Ронин-

Новичок
Не загружаются картинки

У меня сайт работает через шаблоны с использованием .htaccess
Все работает хорошо. Но проблема с картинками. Они не загружаются хотя путь к ним указан "/images/..."
Приходится постоянно дописывать "../"
Или приходится указывать подный путь к картинке, что в свою очередь тоже очень не удобно.
Подскажите как сделать так, чтобы картинки загружались без проблем в т.ч.?


RewriteEngine On

Options +FollowSymlinks
RewriteBase /
RewriteCond %{HTTP_HOST} !^www\..*$
RewriteRule ^.*$ http://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

RewriteCond %{REQUEST_URI} ^/$ [OR]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-s
RewriteCond %{REQUEST_FILENAME} !-l

RewriteRule (.*) xxx.php [L,QSA]
 

bkonst

.. хочется странного?...
Написать что-то вроде

RewriteCond %{REQUEST_URI} !images$
RewriteRule (.*) xxx.php [L,QSA]

?
 

kruglov

Новичок
проблема с картинками. Они не загружаются хотя путь к ним указан "/images/..."
Приходится постоянно дописывать "../"
Или приходится указывать подный путь к картинке, что в свою очередь тоже очень не удобно.
А как у вас выглядит работающий полный путь к картинке, если "/images/..." таковым не является?
 

-Ронин-

Новичок
kvf77
но картинки не отабражаются... :(
по логике тоже думаю, что должно было сработать..
посмотрю может еще в чем-то глюк.

bkonst
сейчас попробуйю

kruglov
Полный путь к картинкам
http://www.domain.ru/images/...

-~{}~ 20.01.06 11:17:

bkonst
не работает...
картинки все равно не отображаются... только на гланой странице.
а если request_uri=http://www.domain.ru/ss/xx/
уже графика не отображается.
 

Positive

Новичок
мне кажется, правильнее будет в HTML-коде в самих IMG SRC написать абсолютный путь, например так:

Код:
<img src="/images/test.gif">
вместо

Код:
<img src="images/test.gif">
как я понимаю у вас сейчас.

Это можно сдеать просто с помощью Extended Replace, например в HomeSite'е.

Заменить "images на "/images

Делов на 2 минуты, зато забудете о глюках и замороченых правилах в .htaccess
 

С.

Продвинутый новичок
Писать абсолютные пути недальновидно.

А проблема вся в том, что кто-то когда-то стал писать все примеры по Rewrite, используя символ "/" в качестве разделителя. И все стали писать свои Rewrit'ы со слешами. Что теперь получается?

Если вы скармливаете браузеру адрес, вида
www.domain.com/123/456/789

то он и картинки будет искать на
www.domain.com/123/456/images/

вместо
www.domain.com/images/
как вы расчитывали.

Вот, чем аукнулся "модный" слэш в Rewrite. По-правильному это надо обходить не прописыванием абсолютных путей, а специальными Rewrit'ами для картинок. А проще всего заменить разделитель. Вместо слэша взять точку, дефис или что угодно другое, и вся проблема с картинками снимается сама собой.
 

С.

Продвинутый новичок
Да, сам! Читабельность URLа не чуть не хуже, чем со слэшами, но одни лишь преемущества:
- всего один RewriteRule
- не надо прописывать абсолютые пути к картинкам

А в случае слэшей:
- либо несколько дополнительных RewriteRule, описываюших доступ к картинкам
- либо отдача картинок через скрипт
- либо абсолютные пути к ним в HTML

А что, г. kruglov может сделать как-то по-другому?
 

С.

Продвинутый новичок
Автор оригинала: PiratusXP
а не проще ли в начале документа указать
<BASE HREF="http://site.ru/">
Каждого документа?

Хотя впрочем зто уже значительно лучше, чем ставить абсолютный путь у каждой картинки, однако...
 

kruglov

Новичок
С.
Лично г. круглова не пугает отдача картинок через скрипт и лишние RewriteRule.

Зато его весьма радует неотличимость сайта от статических html-файлов, красивые URL, возможность легкого перевода сайта в нормальную статику и т.д.
 

С.

Продвинутый новичок
А что,

http://www.domаin.com/123-456-789

менее статикообразно, менее красиво и менее в статику переводимо, чем

http://www.domаin.com/123/456/789/

По-моему, это просто какая-то заскорузлая догма.
 

PiratusXP

Новичок
помойму добавить к
http://www.domаin.com/123-456-789
.html и будет еще лучше

http://www.domаin.com/123-456-789.html
и для Поисковиков приятно =)
 

С.

Продвинутый новичок
Кстати, в случае перевода в статику на слэшах, отдача картинок через скрипт и лишние RewriteRule не спасут. Надо будет опять абсолютные пути к картинлкам писать.

-~{}~ 22.01.06 18:39:

PiratusXP
Я именно так и делаю. Здесь просто для чистоты идеи опустил.
 

kruglov

Новичок
У страниц xxx/yyy/ и xxx/zzz/ есть по картинке. Разной. Называется image.gif. Лично я к ним обращаюсь в xxx/yyy/ как к "image.gif", в xxx/zzz/ тоже как к image.gif.

Хочу переименовать xxx/yyy/ в ttt/bbb/ - нет проблем, переименовываю, местные линки вида <img src="image.gif"> ведут по-прежнему куда надо.

Если я хочу обратиться к первой из этих картинок из xxx/, я пишу yyy/image.gif.

Если я хочу добавить страницу xxx/aaa/ и поместить в нее 3 картинки, я называю их ну пускай image.gif, image2.gif и image.jpgи не забочусь, что они запишутся поверх image.gif из xxx/yyy/

Теперь расскажите мне, как вся эта красота выглядит у вас.

p.s. "По-моему, это просто какая-то заскорузлая догма"
Это правило, выработанное высококлассными специалистами с годами и годами опыта. У вас сколько лет опыта, чтобы утверждать, что это все ерунда?

PiratusXP
и для Поисковиков приятно
Вы эксперт по поисковой оптимизации?
 
Сверху