301 редирект в htaccess с сохранением ?utm-меток

301 редирект в htaccess с сохранением ?utm-меток

После переезда сайта на новую версию остро встает вопрос перенастройки маркетинговых редиректов. Делимся кейсом, как удобно формировать редиректы через htaccess для веб-сервера Apache.

Редирект с помощью директивы Redirect модуля mod_alias

Это самый простой способ. Нужно указать вначале относительную ссылку, а затем абсолютную для адреса, на который нужно совершить перенаправление трафика.

Redirect 301 /old-page.html http://new-domain.ru/new-page.html

Недостатком данного способа является отсутствие какой-либо автоматизации - т.е. все адреса нужно перечислять один за другим вручную.

Редирект с помощью директивы RedirectMatch

В этом типе редиректа уже можно использовать регулярные выражения. А это позволяем нам автоматизировать правила. Например - если массово сменились все типы страниц с php на html, то подойдет следующая конструкция

RedirectMatch /(.*).php$ /$1.html

Редирект с сохранением ?utm-меток

В данной публикации хочется раскрыть также кейс, когда можно организовать редирект с сохранением UTM-меток. Рассмотрим следующее правило

RedirectMatch /old-uri(.*)$ /new-url/$1

Таким образом можно пробросить "хвост" из ?get-параметров после основного URL в переменную ($1) и использовать ее в новой адресации.

Желаем удачи в создании правил перенаправления трафика, а также по-меньше 404х ошибок Вам!

Все статьи →
Приглашаем к сотрудничеству
120+
завершённых проектов
20+ лет
помогаем клиентам расти
123056, Москва, переулок Красина, дом 16, строение 1
Заполните форму и мы свяжемся с вами в ближайшее время!
Согласен с обработкой моих персональных данных
в соответствии с политикой конфиденциальности
123056, Россия, Москва, пер. Красина, д.16, стр.1
+7 (495) 477-60-74