Редирект с категории на категорию через htaccess
Чтобы настроить редиректы с урла site.ru/catalog/category_1/tovar на site.ru/catalog/category_2/tovar используем следующую форму
RewriteRule ^(.*)/category_1/(.*)$ https://site.ru/catalog/category_2/$2$3 [R=301,L]
Или так
RewriteRule ^(.*)/old-category/(.*)$ $1/new-category/$2 [R=301,L]
Например, если нужно настроить редирект, чтобы товары с site.ru/beton/kirpich/tovar перенаправить на site.ru/beton/tovar. Тем самым убрать название категории из URL’а.
RewriteRule ^beton/kirpich/(.*)$ https://site.ru/beton/$1 [R=301,L]
Если у вас категория идет сразу после домена (типа site.ru/category/), то используем такой вариант:
RewriteRule old-category /(.*) / new-category /$1[R=301,L]
Редиректы категорий для OpenCart
Когда надо перенаправить https://site.ru/pukhoviki на https://site.ru/zimnie-kurtki-puhoviki/
RewriteCond %{QUERY_STRING} ^_route_=pukhoviki$ RewriteRule ^(.*)$ https://site.ru/zimnie-kurtki-puhoviki/? [R=301,L]
Описание
Очень часто используемый редирект и особо болезненный для SEO-специалистов. Каждый раз видя, как клиент грохает какие-нибудь категории, меняет вложенность в структуре категорий/разделов, просто меняет алиасы, то сердце замирает. Это худшее, что можете сделать, поменять URL категории, на которой есть трафик, которая занимает какие-то позиции в ТОПе выдачи.
Ну, а если это всё-таки случилось, то наша задача сохранить хоть как-то остатки трафика. Здесь то и пригодятся редиректы для работы с категориями и разделами сайта. Хоть подобные редиректы не передадут поведенческие факторы (ПФ), не сохранят позиции, но трафик будут перенаправлять, в надежде, что новая категория займет какие-то позиции.
Но бывает часто и такое, что CMS сама генерирует дубли, когда одна категория доступна по 2 или более адреса, тогда тоже очень пригодятся данные редиректы, чтобы избежать дублирования контента.