|
|
|
| можно ли сделать, чтоб mod_rewrite проверял условия иерархически? типа если в REQUEST_URI есть подстрока "/topic/" и нет подстроки "/item/" то делать то-то, если есть обе - то делать сё-то..
у меня сейчас написано вот так, но не работает... что поправить?
код:
RewriteCond %{REQUEST_URI} .*/item/.* %{REQUEST_URI} !.*/topic/.*
RewriteRule ^(.*)item/(.*)/$ $1exec/?item=$2
RewriteCond %{REQUEST_URI} .*/topic/.* %{REQUEST_URI} !.*/item/.*
RewriteRule ^(.*)topic/(.*)/$ $1exec/?topic=$2
RewriteCond %{REQUEST_URI} .*/item/.*/topic/.*
RewriteRule ^(.*)item/(.*)/topic/(.*)/$ $1exec/?item=$2&topic=$3 | |
|
|
|
|
|
|
|
для: webmechanics
(11.04.2005 в 11:46)
| | Наконец то добрался до вашего вопроса. Попробуйте следующий вариант
RewriteEngine on
Options +FollowSymlinks
RewriteBase /
RewriteCond %{REQUEST_URI} item
RewriteCond %{REQUEST_URI} !topic
RewriteRule ^(.*)item/(.*)/$ $1exec/?item=$2
RewriteCond %{REQUEST_URI} topic
RewriteCond %{REQUEST_URI} !item
RewriteRule ^(.*)topic/(.*)/$ $1exec/?topic=$2
RewriteCond %{REQUEST_URI} item/.*/topic/.*
RewriteRule ^(.*)item/(.*)/topic/(.*)/$ $1exec/?item=$2&topic=$3
|
Т.е. перед каждым RewriteRule писать список всех условий (по одному в строке), которые должны быть верны для выполнения правила.
Я не тестировал работу RewriteRule, так как у вас слишком сложные URL и не хочется воссоздавать структуру сайта, но условия выполняются правильно. | |
|
|
|