Массовый редирект (Вопрос по настройке .htaccess)

TBAG
На сайте с 28.05.2012
Offline
78
461

Нужно составить массовый редирект со старых карточек товаров на новые.

Структура URLов:

http://site1.ru/catalog/razdel/mbotinki-5036874/#Черный - старый

http://site1.ru/product/5036874 - новый

Артикул остается неизменным.

Вопрос: Возможно ли это сделать с помощью редиректа с регулярным

выражением типа RewriteRule ^product/([^/\.]+)/?$ product.php?id=$1 [L]

или нужно писать отдельный код на SQL (динамический редирект) ?

http://presite.ru/ (http://presite.ru/) - SMM (http://presite.ru/karta-sayta-1.html) только самые качественные материалы (http://www.presite.ru/#top) по раскрутке сайтов и их оптимизации в поисковых системах (http://presite.ru/index.php?option=com_xmap&sitemap=1&view=xml).
J
На сайте с 20.02.2014
Offline
120
jkm
#1

Примерно так


RewriteRule ^catalog/razdel/[^/]+-(\d+)/ /product/$1 [R=301,L]
TBAG
На сайте с 28.05.2012
Offline
78
#2
jkm:


RewriteRule ^catalog/razdel/[^/]+-(\d+)/ /product/$1 [R=301,L]

Это получается:

 [^/]+ 
- любые символы, кроме / хотя бы 1 раз

 - 
- тире

 (\d+) 
- любая цифровая последовательность, одна и более цифр

---------- Добавлено 22.10.2014 в 18:01 ----------

А если у нас разделы будут меняться на старом сайте т.е.

http://site1.ru/catalog/razdel1/mbotinki-5333374/#Черный

http://site1.ru/catalog/razdel2/mbotinki-6546645/#Черный

http://site1.ru/catalog/razdel3/mbotinki-5767567/#Черный

на

http://site1.ru/product/5333374

http://site1.ru/product/6546645

http://site1.ru/product/5767567

,то вот так можно записать:

RewriteRule ^catalog/(.*)/[^/]+-(\d+)/ /product/$1 [R=301,L]
TBAG
На сайте с 28.05.2012
Offline
78
#3

или скорее вот так вернее:

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

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