Привет всем.
у меня возникла проблема с mod_rewrite, за несколько часов не смог разобраться. Может, кто подскажет что-то.
Я пишу очень свою CMS-ку, куча сайтов хостятся на говнохостингах, т.е. решение должно быть под apache.
что мне надо:
админ CMS-ки задает нужные ему размеры картинки, картинки в оригинальном размере на сайте уже есть.
получается тег <img src="/img/500/12345/toyotacorolla.jpg">
toyotacorolla - отфонарное слово для SEO
12345.jpg - реальное имя файла и его id
500 - название размера
Для тех картинок, которые не существуют, мне надо, чтобы шло обращение к php-скрипту, который эту картинку сгенерит.
пишу правила:
второе правило должно выдавать 302й редирект на скрипт, который сгенерит картинку.
редирект тут потому, что у меня одна точка входа, и скрипт должен получить нужный request_url.
но второе правило не срабатывает, а вместо него сразу срабатывает третье правило для yii, вызывается скрипт, и пишет "не могу найти контроллер" (естественно).
Если третье правило отключаю, то редирект срабатывает замечательно, но у меня yii и это 3е правило мне нужно.
Если выставляю 3е правило 2м и в 1м указываю флаг [ S ] - не помогает.
может, кто-то подскажет, где я неправ? или какой-то другой подход к решению
у меня возникла проблема с mod_rewrite, за несколько часов не смог разобраться. Может, кто подскажет что-то.
Я пишу очень свою CMS-ку, куча сайтов хостятся на говнохостингах, т.е. решение должно быть под apache.
что мне надо:
админ CMS-ки задает нужные ему размеры картинки, картинки в оригинальном размере на сайте уже есть.
получается тег <img src="/img/500/12345/toyotacorolla.jpg">
toyotacorolla - отфонарное слово для SEO
12345.jpg - реальное имя файла и его id
500 - название размера
Для тех картинок, которые не существуют, мне надо, чтобы шло обращение к php-скрипту, который эту картинку сгенерит.
пишу правила:
отресайзенные картинки показываются, все хорошо,RewriteRule ^img/(\w{1,20}/\d{1,10})/.*\.jpg$ assets/img/$1.jpg
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^assets/img/(\w{1,20})/(\d{1,10})\.jpg$ /controller/action/id/$2/preset/$1 [R,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php
второе правило должно выдавать 302й редирект на скрипт, который сгенерит картинку.
редирект тут потому, что у меня одна точка входа, и скрипт должен получить нужный request_url.
но второе правило не срабатывает, а вместо него сразу срабатывает третье правило для yii, вызывается скрипт, и пишет "не могу найти контроллер" (естественно).
Если третье правило отключаю, то редирект срабатывает замечательно, но у меня yii и это 3е правило мне нужно.
Если выставляю 3е правило 2м и в 1м указываю флаг [ S ] - не помогает.
может, кто-то подскажет, где я неправ? или какой-то другой подход к решению