Блог
Как сделать 301-редиректы при смене домена WordPress и не уронить трафик
Переезд сайта — это всегда -30...-50% трафика на 2-4 недели. Часть восстанавливается, часть теряется навсегда. Можно сократить потери в 3-5 раз если сделать правильные редиректы.
Расскажу шаг за шагом. Пример — WordPress, но всё то же самое для Tilda, Webflow, Ghost, любой CMS.
Что считается «правильным» редиректом
301-редирект — это сигнал Google «эта страница навсегда переехала туда-то». Google переносит её ранжирование на новый URL в течение 1-4 недель.
302-редирект (временный) — Google НЕ переносит ранжирование, ждёт пока вы вернёте оригинал. Если случайно ставите 302 при миграции — теряете весь SEO-вес страницы.
Поэтому первое правило: проверьте что движок CMS ставит именно 301, не 302. Через curl: curl -I https://старый-url.ru/статья — в выводе должна быть строка HTTP/2 301 Moved Permanently.
Шаг 1. До миграции — собрать карту старых URL
Простой способ: открыть Screaming Frog SEO Spider (бесплатно до 500 URL) → вставить старый домен → дождаться обхода → экспортировать список URL в CSV.
Если страниц меньше 100 — можно вручную из меню навигации и sitemap.xml.
Цель — получить файл такого вида:
old_url
https://old.ru/blog/post-1
https://old.ru/blog/post-2
https://old.ru/services/seo
https://old.ru/about
...
Шаг 2. Прописать новые URL рядом
Откройте этот CSV в Excel/Google Sheets. Добавьте вторую колонку — куда теперь живёт каждая страница на новом сайте.
old_url,new_url
https://old.ru/blog/post-1,https://new.ru/blog/post-1
https://old.ru/blog/post-2,https://new.ru/blog/post-2
https://old.ru/services/seo,https://new.ru/services
https://old.ru/about,https://new.ru/o-nas
Если slug совпадает — копируете без правок. Если меняется — ищете руками. Это самая долгая часть.
Шаг 3. Сгенерировать файл редиректов
В зависимости от сервера, нужен разный формат.
Apache (.htaccess):
Redirect 301 /blog/post-1 https://new.ru/blog/post-1
Redirect 301 /blog/post-2 https://new.ru/blog/post-2
Redirect 301 /services/seo https://new.ru/services
Nginx:
rewrite ^/blog/post-1$ https://new.ru/blog/post-1 permanent;
rewrite ^/blog/post-2$ https://new.ru/blog/post-2 permanent;
Cloudflare Bulk Redirects (если сайт за CF): Просто загрузите CSV в Dashboard → Rules → Bulk Redirects.
Если URL мало (≤30) — генерируете руками. Если много — лучше через инструмент, иначе обязательно где-то ошибётесь.
Шаг 4. 5 типичных ошибок которые я видел
1. Редирект-цепочки. old.ru/a → old.ru/b → new.ru/c — Google теряет ~10% веса на каждом шаге. Делайте сразу old.ru/a → new.ru/c.
2. Редирект всего на главную. «Чтобы быстро» все 200 URL редиректят на new.ru/. Google такое не любит — считает «soft 404» и выкидывает страницы из выдачи. Редирект только на реально соответствующую страницу.
3. Забыли про /feed и /sitemap.xml. Если у вас был RSS-feed на старом домене — он используется в агрегаторах и подписчиках. Без редиректа теряете аудиторию.
4. Не редиректят картинки. Если статьи использовали https://old.ru/wp-content/uploads/... — без редиректа на https://new.ru/uploads/... все ваши Google-картинки выпадают из выдачи.
5. Не обновили внутренние ссылки в текстах статей. Редирект работает, но Google видит что внутренние ссылки в новых статьях ведут на старый домен. Это сигнал «миграция не закончена». Обязательно глобальный поиск-замена.
Шаг 5. Проверка после деплоя
Через час после переключения DNS:
curl -I https://старый-url.ru/любая-страница→ должно быть 301 + Location: новый URL- Через 1 неделю — Search Console «Внешний вид в поиске → Действия по URL» — добавить новый домен и запросить переиндексацию
- Через 2 недели — посмотреть Search Console «Покрытие». Если есть «Soft 404» — значит редирект где-то на главную, нужно починить
- Через 4 недели — сравнить общий трафик. Если упал больше чем на 30% — что-то делали не так
Если URL много
Когда у вас 300+ URL и руками править CSV больно — есть seoforge.dev/redirect. Загружаете 2 CSV (старые и новые), инструмент сам мэппит по slug + нормализованным окончаниям. На выходе готовый файл редиректов в любом из 6 форматов (.htaccess, nginx, Cloudflare Bulk, Webflow, Vercel, Next.js middleware).
Всё происходит в браузере — на наш сервер ваши URL не уходят, структуру старого сайта никто не видит.
И после миграции — обновите schema.org разметку на новых URL. Иначе старая разметка ссылается на 404 и Google режет Rich Results.
Понравилась статья?
Подпишись — пришлём 1 письмо в 2 недели, без спама.