2010-03-31 4 views
0

Я использую следующий код для попытки перенаправить динамический URL на новый динамический URL, в том же домене:.htaccess перенаправляет динамический URL

RewriteRule ^products/item/^\d([^/]+) /product/$1/ [R=301,L] 

Я пробовал это слишком:

RewriteRule ^products/item/[^\d]([^/]+) /product/$1/ [R=301,L] 
RewriteRule ^products/item/[0-9]([^/]+) /product/$1/ [R=301,L] 

Но это было перенаправлять /products/item/342/ к /product/42/, я испытал это на большем количестве (например, 123456789) и перенаправляется на /product/23456789/.

Похоже, что мое правило не подбирает первую цифру, может ли кто-нибудь помочь мне разрешить это?

Я также пробовал использовать [\d] instaled из [0-9], но у этой же проблемы.

Cheers!

ответ

3

Попробуйте

RewriteRule ^products/item/(\d[^/]+) /product/$1/ [R=301,L] 
+0

Genius! Это получилось;), большое спасибо за ваш ответ! –

+0

Это была группа в регулярном выражении, которая вызвала проблему. $ 1 будет соответствовать всем, что находится в круглых скобках. – yogsototh

0
RewriteRule ^products/item/([0-9]+) /product/$1/ [R=301,L] 
Смежные вопросы