Не работает реврайт для картинок

Тема в разделе "Mod Rewrite / htaccess / ЧПУ", создана пользователем alica, 18 май 2009.

Статус темы:
Закрыта.
  1. alica

    alica

    Регистр.:
    28 июл 2008
    Сообщения:
    243
    Симпатии:
    76
    Есть реврайт

    RewriteRule ^images/(.*)$ img_src.php?name=/img/$1

    или

    RewriteRule ^images/(.*)$ img_src.php?name=/img/$1 [L]

    или

    RewriteRule ^images/(.*)$ img_src.php?name=/img/$1 [R=301,L]


    Но почему-то при урле domain.com/images/photo.jpg оно не применяется, и получаем 404... Так какое правило будет в этом случаи работать ?
     
  2. a_n_d_y

    a_n_d_y

    Регистр.:
    26 мар 2006
    Сообщения:
    465
    Симпатии:
    61
    А весь .htaccess можно в студию?
     
  3. andrnag

    andrnag

    Регистр.:
    26 мар 2008
    Сообщения:
    350
    Симпатии:
    125
    RewriteBase указан?
    вы предполагаете, что пути от корня сайта, но нужно это явно задать так:
    Код:
    RewriteBase /
    
     
  4. andrnag

    andrnag

    Регистр.:
    26 мар 2008
    Сообщения:
    350
    Симпатии:
    125
    tirrex после знака ? начинается query string и туда мы можем пихать любые символы. А автор хочет передать путь к картинке в свой скрипт img_src.php чтобы там уже сделать, то что ему хочется.

    Дело точно не в слешах, у меня есть подобные правила и они работают. А вот путь к скрипту указан относительный. В этом случае обязательно нужно задать RewriteBase.

    Модификаторы сильно зависят от того что автору нужно сделать, но скорее всего нужен L.

    И таки .htaccess в студию. По фотографии не лечим ;-)
     
  5. Sargej_Saint

    Sargej_Saint Создатель

    Регистр.:
    5 ноя 2008
    Сообщения:
    45
    Симпатии:
    8
    А я бы чтоб не заниматься подбором просто изменил бы чуток скрипт, задав внутри путь к папке с картинками, чтобы его не пихать в get-переменную...

    Тогда в хэтаксессе просто пишем:

    RewriteRule ^images/(.*)$ img_src.php?name=$1

    ... а в img_src.php подставляем путь к папке...
     
Статус темы:
Закрыта.