|
Товарищи, проблема такая:
Пишу RewriteCond'ы, в которых указываю определённые параметры, он заменяет строку на нужную, потом следующий RewriteCond берёт уже изменённую строку и получается ненужное преобразование... Как исправить? Поменять местами условия и правила не выход, их может быть 10-ток, сложно будет сортировать...
2
Павел
Да да, он задаёт условие преобразования.
Допустим я преобразовал строку из "index1/index2/" в, ну скажем для простоты, index.php5?path=index1/index2/, а следующий за этим правилом RewriteCond проверяет, если строка REQUEST_URI пустая (т.е. в строке адреса введён просто адрес сайта), либо пользователь по понятным только себе причинам ввёл index.php5 или задал ещё и строку QUERY, то выполняется ещё одно правило, а раз строка уже была преобразована в вид index.php5?path=index1/index2/ То второе правило это съедает и тоже срабатывает...
3
Алекс
[L] поставить у RewriteRule
4
Александр
в идеале надо ставить [NC,L]
NC - регистронезависимое Для отладки, до кучи можно вписать везде R - тогда будет видно на что их переписывает
5
Иван
Люди, а где можно подробно обо всем этом почитать? Я иногда пишу что нибудь для удобства, но в основном по примерам и во все тонкости модреврайта не вникал.
6
Александр
Иногда ГУГЛ спасает мир....
http://http://www.modrewrite.com/ http://http://httpd.apache.org/docs/1.3/mod/mod_rewrite.html Учим аглицкий, господа |


Алекс