Помогите с RewriteRule

Статус
Закрыто для дальнейших ответов.

jurma

Новичок
Регистрация
09.06.2010
Сообщения
1
Привет.
Помогите пожалуйста сделать правило для RewriteRule.

Надо чтобы по определенной маске адресов редиректилось на конкретный php файл, передавая значение маски в параметре.
Вот такой адрес - http://www.petra.com/index.php?p=21-122-116; определяющая маска - index.php?p=21-122-116.
Мне надо этот 21-122-116 передать в точку входа поэлементно (в общем не важно).
Вот такое я пишу: RewriteRule index\.php\?p=([\d]{1,3})-([\d]{1,3})-([\d]{1,3}) uwrite.php?productid=$1
И оно не работает. :(

Я опытным путем установил, что RewriteRule index\.php uwrite.php?productid=$1 - пашет, но любые другие последующие условия приводят к игнору правила.
В чем я не прав? Как надо?
 

Creator

Administrator
Команда форума
Регистрация
03.03.2005
Сообщения
1 745
Правилами mod_rewrite вы не сможете обработать параметры после ?, поэтому нужно сделать свой роутер на PHP либо избавиться от "?", заменив его на "/"

В итоге правило вида:

Код:
RewriteRule ^index\.php/p=(\d{1,3})-(\d{1,3})-(\d{1,3})$ uwrite.php?productid=$1&arg2=$2&arg3=$3 [L]
будет обрабатывать урл: index.php/p=21-122-116 как productid=21&arg2=122&arg3=116
 
Статус
Закрыто для дальнейших ответов.
Верх Низ