Еще один вопрос по поводу mod_rewrite

deepslam

Новичок
Еще один вопрос по поводу mod_rewrite

Добрый вечер!
Сделал на своем сайте ссылки вида
сайт/язык/идентификатор рубрики
Все работает отлично, но хотелось бы еще передавать конкретной рубрике значения например
сайт/язык/идентификатор/?переменная=значение
Подскажите пожалуйста что мне нужно дописать, чтобы к index.php прибавились передаваемые параметры?
Текущее содержимое .htaccess:
RewriteEngine on
RewriteRule !\.(gif|jpg)$ /
RewriteRule ^([0-9a-zA-Z]+){0,1}/([0-9a-zA-Z_/]+)/{0,1}$ /index.php?lang=$1&id=$2&$3 [L]
 

Sam

Новичок
RewriteEngine on
RewriteRule !\.(gif|jpg)$ /
RewriteRule ^([0-9a-zA-Z]+){0,1}/([0-9a-zA-Z_/]+)/{0,1}$ /index.php?lang=$1&id=$2&$3%{QUERY_STRING} [L]
 

deepslam

Новичок
Sam
Огромное спасибо!

-~{}~ 25.03.06 21:45:

Sam
Только выдает почему то 500 ошибку (

-~{}~ 25.03.06 21:48:

Sam
Сорри че та тупанул, все работает нормально!

-~{}~ 26.03.06 15:04:

только что обнаружил еще один баг, почему то если обращаюсь с параметром , т.е. например www.site.ru/ru/site/view/?action=add , ток id прибавляется 1, почему так происходит что то ума не приложу, помогите пожалуйста рабзобраться!
Если обращаюсь к www.site.ru/ru/site/view/ , то в id все как нужно.
Заранее спасибо!
 

Sam

Новичок
не особо понял где здесь www.site.ru/ru/site/view/?action=add у тебя id, но такое ощущение что ошибка в регэкспе.
 

deepslam

Новичок
Sam
вот содержимое .htaccess:
RewriteEngine on
RewriteRule ^([0-9a-zA-Z]+){0,1}/([0-9a-zA-Z_/]+)/{0,1}$ /index.php?lang=$1&id=$2&$3%{QUERY_STRING} [L]

lang получает нормально, а к id добавляет "/1"
т.е. если я например обращаюсь к www.site.ru/ru/admin/site, то
lang = ru, а id = admin/site , все работает как нужно, но если я обращаюсь к www.site.ru/ru/admin/site/?parametr=add, то lang=ru, то почему то id=admin/site/1/
 

Andreika

"PHP for nubies" reader
deepslam

http://...../dir/ru/admin/site/?parametr=add
Код:
Array
(
    [lang] => ru
    [id] => admin/site/
    [parametr] => add
)

а что такое $3 в $1&id=$2&$3%{QUERY_STRING}?
 

Sad Spirit

мизантроп (Старожил PHPClub)
Команда форума
Автор оригинала: deepslam
Подскажите пожалуйста что мне нужно дописать, чтобы к index.php прибавились передаваемые параметры?
Добавить вот сюда модификатор QSA:
RewriteRule ^([0-9a-zA-Z]+){0,1}/([0-9a-zA-Z_/]+)/{0,1}$ /index.php?lang=$1&id=$2&$3 [L]
 
Сверху