Переехали на новый домен, поменяли структуру URL или перевели сайт на HTTPS — и потеряли половину трафика? Скорее всего, дело в неправильных редиректах. 301 редирект — это базовый инструмент технического SEO, который передаёт вес старой страницы на новую. Настроите правильно — сохраните позиции. Ошибётесь — Яндекс сбросит всё накопленное.
Что такое 301 редирект и зачем он нужен
301 редирект (Moved Permanently) — это серверный ответ, который говорит браузеру и поисковому роботу: «Эта страница навсегда переехала по новому адресу». Когда Яндекс видит 301, он понимает, что нужно:
- Убрать старый URL из индекса
- Добавить в индекс новый URL
- Передать накопленный ссылочный вес (не 100%, но большую часть)
- Сохранить позиции страницы в выдаче (с небольшой просадкой на время переиндексации)
Без 301 редиректа старая страница со временем выпадет из индекса, а новая начнёт ранжироваться с нуля — как будто у неё нет никакой истории. Все внешние ссылки, которые ведут на старый URL, будут вести в никуда.
301 vs 302 vs 307 — когда использовать какой
Путаница между кодами редиректов — одна из самых частых ошибок продвижения. Разберём каждый:
301 — Moved Permanently (постоянный)
Используйте, когда страница переехала навсегда. Яндекс склеит старый и новый URL, передаст вес. Типичные ситуации:
- Переезд на новый домен
- Смена структуры URL (например, убрали /catalog/ из пути)
- Переход с HTTP на HTTPS
- Склейка www и без www
- Удалённая страница, у которой есть релевантная замена
302 — Found (временный)
Страница временно доступна по другому адресу, но скоро вернётся. Яндекс НЕ передаёт вес и НЕ убирает старый URL из индекса. Используйте для:
- Временного обслуживания сайта (техработы)
- A/B тестирования страниц
- Геозависимых редиректов (пользователь из Москвы → moscow.site.ru)
Частая ошибка: ставят 302 вместо 301 при переезде на HTTPS. Яндекс видит, что это «временно», и не склеивает домены. Позиции зависают между двумя версиями сайта.
307 — Temporary Redirect
Аналог 302, но гарантирует сохранение метода запроса (POST остаётся POST). В SEO используется редко — только для технических задач с формами и API.
Правило простое: если переезд навсегда — 301. Если временно и скоро вернёте обратно — 302. В 90% случаев вам нужен именно 301.
Настройка 301 редиректа в .htaccess (Apache)
Файл .htaccess лежит в корне сайта. Если его нет — создайте. Все правила обрабатываются модулем mod_rewrite.
Редирект одной страницы
Redirect 301 /staraya-stranica.html https://site.ru/novaya-stranica.html
Склейка www и без www
Яндекс считает www.site.ru и site.ru разными сайтами. Нужно выбрать основное зеркало и настроить редирект:
# Редирект с www на без www
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.site\.ru$ [NC]
RewriteRule ^(.*)$ https://site.ru/$1 [R=301,L]
# Редирект с без www на www
RewriteEngine On
RewriteCond %{HTTP_HOST} ^site\.ru$ [NC]
RewriteRule ^(.*)$ https://www.site.ru/$1 [R=301,L]
Переход с HTTP на HTTPS
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]
Редирект с trailing slash (слэш в конце)
# Убрать слэш в конце URL (кроме директорий)
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)/$ /$1 [R=301,L]
# Добавить слэш в конце URL
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.+[^/])$ /$1/ [R=301,L]
Редирект старого домена на новый
# На старом домене — постранично RewriteEngine On RewriteRule ^(.*)$ https://newsite.ru/$1 [R=301,L]
Массовый редирект по шаблону
# Все страницы из /blog/ перенести в /articles/ RewriteEngine On RewriteRule ^blog/(.*)$ /articles/$1 [R=301,L]
Настройка 301 редиректа в nginx
Если сайт работает на nginx (а сейчас это большинство серверов), редиректы настраиваются в конфигурационном файле /etc/nginx/sites-available/site.conf.
Редирект одной страницы
server {
location = /staraya-stranica.html {
return 301 https://site.ru/novaya-stranica.html;
}
}
Склейка www и без www
# Редирект с www на без www
server {
listen 443 ssl;
server_name www.site.ru;
return 301 https://site.ru$request_uri;
}
HTTP на HTTPS
server {
listen 80;
server_name site.ru www.site.ru;
return 301 https://site.ru$request_uri;
}
Редирект старого домена
server {
listen 443 ssl;
server_name oldsite.ru www.oldsite.ru;
return 301 https://newsite.ru$request_uri;
}
Важно: после изменения конфигурации nginx нужно проверить синтаксис и перезагрузить:
sudo nginx -t sudo systemctl reload nginx
Типичные сценарии редиректов
Переезд на HTTPS (самый частый)
Порядок действий:
- Установите SSL-сертификат
- Проверьте что HTTPS-версия работает корректно
- Настройте 301 с HTTP на HTTPS
- В Яндекс.Вебмастере добавьте HTTPS-версию сайта
- Подайте заявку на переезд сайта (Индексирование → Переезд сайта)
- Обновите robots.txt — пропишите Host с HTTPS
- Обновите sitemap.xml — все URL должны быть с HTTPS
Смена структуры URL
Допустим, вы убрали вложенность из URL:
/catalog/category/product.html→/product.html
Нужно настроить 301 для каждого старого URL на новый. Если страниц много — используйте RewriteMap в Apache или map в nginx:
# nginx — map для массовых редиректов
map $request_uri $new_uri {
/catalog/category/product1.html /product1.html;
/catalog/category/product2.html /product2.html;
/catalog/category/product3.html /product3.html;
}
server {
if ($new_uri) {
return 301 $new_uri;
}
}
Удалённые страницы
Если страница удалена и замены нет — отдавайте 410 (Gone), а не редиректьте на главную. Яндекс быстрее уберёт такую страницу из индекса. Если есть похожая страница — делайте 301 на неё.
Цепочки редиректов — почему это плохо
Цепочка редиректов — это когда одна переадресация ведёт к другой:
http://site.ru → https://site.ru → https://www.site.ru → https://www.site.ru/ # Три редиректа подряд!
Чем это грозит:
- Потеря ссылочного веса. На каждом шаге теряется часть веса. Два-три редиректа — и до целевой страницы доходит заметно меньше
- Замедление загрузки. Каждый редирект — это дополнительный HTTP-запрос. Три редиректа — это +300-600 мс к скорости загрузки
- Яндекс может не дойти до конца. Робот Яндекса обычно следует максимум 5 редиректам, но чем короче цепочка — тем лучше
- Проблемы с краулинговым бюджетом. Бот тратит ресурсы на прохождение цепочки вместо сканирования полезных страниц
Правило: каждый старый URL должен вести напрямую на конечный адрес. Один редирект — один переход. Если у вас http://site.ru/old-page → настройте сразу на https://site.ru/new-page, без промежуточных шагов.
Как Яндекс обрабатывает редиректы (склейка)
В Яндексе процесс переноса называется «склейка». Когда робот видит 301 редирект со страницы A на страницу B, он запускает процесс склейки — переносит ссылочный вес и историю ранжирования.
Особенности склейки в Яндексе:
- Срок: склейка занимает от 2 до 8 недель. Иногда дольше — зависит от частоты обхода вашего сайта
- Просадка: временное падение позиций на 10-30% — это нормально. После завершения склейки позиции восстанавливаются
- Директива Host: в robots.txt укажите основное зеркало через
Host: site.ru— это ускорит склейку - Вебмастер: обязательно подтвердите оба домена (старый и новый) и подайте заявку на переезд через Яндекс.Вебмастер
- Не торопитесь: после настройки 301 не убирайте редирект минимум 6 месяцев. Яндексу нужно время для полной переиндексации
Для Google процесс проще — он быстрее обрабатывает 301 и не требует директиву Host. Но если вы работаете в рунете, ориентируйтесь на сроки Яндекса.
Типичные ошибки, которые убивают SEO
1. Редирект всех страниц на главную
Самая грубая ошибка. Вместо постраничного редиректа (старый URL → соответствующий новый URL) все старые страницы перенаправляют на главную. Яндекс расценивает это как «soft 404» — страница не найдена. Весь накопленный вес теряется.
2. Использование 302 вместо 301
При постоянном переезде ставят 302 (временный). Яндекс не передаёт вес через 302 и держит в индексе обе версии URL. Проверьте — возможно, это ваша проблема прямо сейчас.
3. Циклические редиректы
Страница A редиректит на B, а B — обратно на A. Браузер выдаёт ошибку ERR_TOO_MANY_REDIRECTS, страница не открывается, Яндекс убирает её из индекса.
# Ошибка: цикл! # В .htaccess на site.ru: RewriteRule ^(.*)$ https://www.site.ru/$1 [R=301,L] # В .htaccess на www.site.ru: RewriteRule ^(.*)$ https://site.ru/$1 [R=301,L]
4. Редирект на несуществующую страницу
301 ведёт на URL который отдаёт 404. Двойной удар: и вес потерян, и пользователь видит ошибку. Перед настройкой проверьте что целевые страницы доступны.
5. Забыли обновить внутренние ссылки
После редиректов внутренние ссылки на сайте до сих пор ведут на старые URL. Каждый переход — это лишний редирект, потеря скорости и веса. Обновите все ссылки в навигации, контенте, микроразметке на новые адреса.
6. Не обновили sitemap.xml и canonical
В sitemap.xml указаны старые URL, а тег <link rel="canonical"> ведёт на старый адрес. Яндекс получает противоречивые сигналы — и 301 говорит переехать, и canonical указывает на старый URL.
Как проверить что редиректы работают
Онлайн-сервисы
- httpstatus.io — покажет цепочку редиректов и финальный код ответа
- redirect-checker.org — визуализирует цепочку
- Яндекс.Вебмастер → Инструменты → Проверка ответа сервера — проверяет именно глазами Яндекса
Через curl в терминале
# Показать заголовки ответа curl -I https://site.ru/old-page # Следовать по всей цепочке редиректов curl -ILs https://site.ru/old-page | grep -E "HTTP/|Location:"
В ответе должно быть HTTP/1.1 301 Moved Permanently и Location: https://site.ru/new-page.
В браузере (DevTools)
- Откройте DevTools (F12) → вкладка Network
- Введите старый URL в адресную строку
- Смотрите первый запрос — Status должен быть 301
- В Response Headers найдите
Location— это адрес, куда идёт редирект
Массовая проверка через Screaming Frog
Если у вас сотни редиректов — проверяйте Screaming Frog SEO Spider. Он покажет все цепочки, циклы и редиректы на 404. Бесплатная версия сканирует до 500 URL.
Чек-лист: правильная настройка 301 редиректов
- Определите тип переезда: домен, протокол, структура URL
- Составьте таблицу «старый URL → новый URL» для всех страниц
- Настройте 301 (не 302!) для каждого URL
- Убедитесь что нет цепочек — каждый старый URL ведёт сразу на конечный
- Проверьте отсутствие циклов
- Обновите все внутренние ссылки на сайте
- Обновите sitemap.xml — только новые URL
- Обновите canonical теги
- В Яндекс.Вебмастере подайте заявку на переезд
- Укажите Host в robots.txt (для Яндекса)
- Мониторьте позиции и индексацию 2-3 месяца
- Не убирайте редиректы минимум 6-12 месяцев
Итог
301 редирект — это не просто техническая настройка, а страховка вашего SEO. Правильно настроенный редирект сохраняет позиции, ссылочный вес и трафик. Неправильный — обнуляет месяцы работы по продвижению сайта.
Главное: используйте 301 для постоянных переездов, избегайте цепочек, обновляйте внутренние ссылки и давайте Яндексу время на склейку. Если сомневаетесь — лучше проконсультируйтесь со специалистом до того, как сломаете то, что работало.
Нужна помощь с редиректами?
Настрою редиректы правильно — без потери позиций и трафика. Особенно важно при переезде на новый домен или смене структуры сайта.
Написать в Telegram