Нужна помощь с созданием правила для mod_rewrite

vlasoff
На сайте с 31.08.2007
Offline
101
440

Добрый вечер,

нужно чтобы любой запрос к сайту обрабатывал index.php, и чтобы строка запроса отдавалась скрипту в GET параметр "q", а если в цонце url содержится --param, то в "q" отдать всё что находится ДО "--" и в параметр "param" отжать всё что после "--".

В .htaccess пишу:

RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^(.*)\-\-(.*?)\/?$ index.php?q=$1&section=$2 [L,QSA]

Запрос к серверу вида: http://site.ru/razdel--section/ отрабатывает как надо, а запрос вида http://site.ru/razdel/ вызывает ошибку 404 апача, подскажите плз, кто знает, как починить?

vlasoff добавил 04.02.2011 в 17:03

сделал так:

RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^(.*)\-\-(.*?)\/?$ index.php?q=$1&section=$2 [L,QSA]

RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]

работает, НО хотелось бы, если это возможно, обойтись одним правилом

siv1987
На сайте с 02.04.2009
Offline
427
#1

если так хочется

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^(.*?)(?:--(.*?)/?)?$ index.php?q=$1&section=$2 [L,QSA]

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий