Что такое редирект и зачем он нужен

Редирект — это ответ сервера, который говорит браузеру и поисковому роботу: «запрошенного содержимого здесь нет, оно по другому адресу». Технически это код ответа из группы 3xx плюс заголовок Location с целевым URL.

GET /catalog/staraya-kategoriya/  HTTP/1.1

HTTP/1.1 301 Moved Permanently
Location: https://example.ru/catalog/novaya-kategoriya/

Для пользователя разница между кодами незаметна — он в любом случае попадает на конечную страницу. Разница существует только для поисковой системы, и именно она определяет судьбу старого URL в индексе. Поэтому редирект — редкий случай, когда технически «работающая» настройка может месяцами разрушать индексацию, не давая никаких видимых симптомов на сайте.

Коды редиректов и их трактовка

Способ Код Как трактует поисковик Когда применять
301 Moved Permanently 301 Переезд навсегда: старый URL склеивается с новым, сигналы передаются, старый адрес выпадает из индекса Смена URL, склейка зеркал, удалённый товар с прямым аналогом
302 Found 302 Временное перенаправление: в индексе остаётся старый URL Временная заглушка, A/B-эксперимент, товар временно вне продажи
307 Temporary Redirect 307 То же, что 302, но метод запроса гарантированно сохраняется (POST остаётся POST) Временный редирект для форм и API-запросов
308 Permanent Redirect 308 То же, что 301, с сохранением метода запроса Постоянный переезд там, где важен метод; поддержка старыми клиентами хуже, чем у 301
meta refresh 200 Распознаётся, но обрабатывается медленнее и хуже; при задержке больше 0 воспринимается как временный Не применять для SEO-задач; допустимо для служебных страниц
JS-редирект 200 Срабатывает только после рендеринга страницы, откладывает переобход на неопределённый срок Не применять для смены URL; допустимо для пользовательской логики после авторизации
💡

Правило выбора в одну строку: возвращать старый URL не планируете — 301, планируете — 302. Всё остальное (meta refresh, JS-редирект) для задач поисковой оптимизации использовать не стоит: они не дают серверного сигнала о переезде.

Типовые задачи в e-commerce

Удалённый или распроданный товар. Самая частая и самая дорогая по последствиям ситуация — в крупном каталоге ассортимент меняется постоянно. Варианты решения по убыванию предпочтительности:

Ситуация Корректное решение
Есть прямой аналог (новая модель, тот же товар в другом SKU) 301 на карточку аналога
Аналога нет, товар может вернуться Страница с кодом 200, статусом «нет в наличии» и блоком похожих товаров
Аналога нет, товар не вернётся, страница без трафика и ссылок 404 или 410
Удалена целая линейка 301 на релевантную категорию, а не на главную

Страница «нет в наличии» с сохранённым контентом и подборкой альтернатив обычно выгоднее редиректа: она удерживает поисковый трафик по названию модели и даёт пользователю выбор вместо тупика.

Смена URL категории. При переезде структуры нужно не только выставить 301 со старых адресов, но и одновременно переписать все внутренние ссылки на новые URL, обновить карту сайта и проверить, что фильтрационные и страничные URL внутри категории тоже переехали.

Склейка зеркал. Четыре классические пары, которые должны быть сведены к одной канонической версии одним переходом:

http://example.ru/     →  https://example.ru/      (протокол)
https://www.example.ru →  https://example.ru/      (www)
/catalog/shoes         →  /catalog/shoes/          (слеш в конце)
/Catalog/Shoes/        →  /catalog/shoes/          (регистр)

Важно, чтобы правила были согласованы: если протокол и www обрабатываются разными правилами по очереди, получится цепочка из трёх переходов вместо одного.

Ошибки, которые дорого стоят

Ошибка Что происходит
Цепочка редиректов Каждое звено — лишний запрос и задержка; расходуется краулинговый бюджет, часть сигналов теряется на длинных цепочках
Цикл редиректов Страница недоступна ни пользователю, ни роботу — ошибка ERR_TOO_MANY_REDIRECTS, гарантированный вылет из индекса
Массовый редирект на главную Поисковик видит, что содержимое не соответствует запросу, и трактует такие URL как soft 404 — сигналы не передаются, страницы просто выпадают
302 вместо 301 на постоянный переезд Старый URL месяцами остаётся в индексе, новый не набирает позиции, трафик распылён между двумя адресами
Гео- и языковые редиректы по IP Робот, который приходит с одного региона, физически не видит остальные версии сайта — они не попадают в индекс. Ломает hreflang и в тяжёлых случаях делает недоступной карту сайта
Редирект вместо canonical Редирект убирает страницу для пользователя; там, где нужно лишь указать основную версию (сортировки, UTM-параметры), корректнее канонический URL
Старый URL закрыт в robots.txt Робот не может зайти на URL и, следовательно, не узнаёт о редиректе — склейка не происходит
Внутренние ссылки ведут на старые адреса Сайт сам гоняет робота через редиректы на каждом обходе, хотя правило настроено верно

Редирект всего трафика с несуществующих адресов на главную страницу выглядит как аккуратное решение «чтобы не было 404», но для поиска это худший из вариантов. Поисковая система сравнивает содержимое конечной страницы с исходным запросом, не находит соответствия и помечает такие переходы как soft 404 — сигналы не передаются, а главная страница получает поток нерелевантных заходов с мгновенным возвратом в выдачу.

Как проверять

  1. Код ответа, а не вид в браузере. Браузер показывает конечную страницу и скрывает промежуточные звенья. Нужен инструмент, который печатает всю трассу переходов с кодами: curl -I -L или любой сервис проверки ответа сервера.
  2. Краулер по всему сайту. Полный обход показывает то, что не видно поштучно: сколько внутренних ссылок ведёт на редиректы, где образовались цепочки, есть ли циклы.
  3. Отчёты панелей вебмастера. В Google Search Console — отчёт об индексировании со статусом «Страница с переадресацией», в Яндекс.Вебмастере — раздел со страницами, исключёнными из поиска. Именно здесь всплывают массовые проблемы, которые не видно точечными проверками.
  4. Проверка робота, а не только своего браузера. Если на сайте есть гео- или языковая логика, проверьте ответ для запроса без cookie и с другим регионом — робот приходит именно так.
  5. Контроль после релиза. Любой переезд URL — повод перепроверить карту сайта, внутренние ссылки и файл robots.txt в тот же день, а не через месяц по факту падения органического трафика.

Чек-лист перед переездом URL:

  • составлена карта соответствия «старый URL → новый URL», один к одному, без пачки адресов на одну страницу;
  • везде 301, а не 302;
  • ни одной цепочки: старый адрес ведёт сразу на финальный;
  • внутренние ссылки, меню и хлебные крошки переписаны на новые адреса;
  • карта сайта содержит только конечные URL, отдающие 200;
  • старые URL не закрыты в robots.txt — иначе робот не увидит редирект;
  • канонические теги на новых страницах указывают на самих себя.