Редирект — это переадресация с одного адреса на другой: сервер отвечает кодом из диапазона 3xx и указывает новый адрес в заголовке Location, а браузер или поисковый робот переходит по нему. От того, какой код вы используете — 301 или 302, — зависит, как поисковая система обработает старый и новый адрес.
Ниже — чем отличаются основные коды редиректов, как настроить переадресацию на сервере, чем опасны цепочки и циклы и какие ошибки встречаются чаще всего.
Что такое редирект и когда он нужен
Как работает редирект
Браузер или робот запрашивает страницу. Сервер отвечает кодом из диапазона 300–399 и заголовком Location, где указан новый адрес. Клиент переходит по этому адресу — для пользователя это обычно незаметно и происходит мгновенно.
GET /old-page/ HTTP/1.1
Host: example.com
HTTP/1.1 301 Moved Permanently
Location: https://example.com/new-page/
Когда редирект нужен
Типичные причины настроить редирект:
- адрес страницы изменился (новый URL, новая структура раздела);
- несколько страниц объединены в одну, и старые адреса ведут на объединённую версию;
- страница временно недоступна и её нужно заменить другой на время.
301 и 302: в чём разница
301 Moved Permanently
Код 301 означает, что целевому ресурсу присвоен новый постоянный адрес. Google использует этот сигнал как указание на то, что страница переехала навсегда: переходит по новому адресу и начинает считать его канонической версией страницы. Яндекс при корректном ответе индексирует целевую страницу, если она доступна.
302 Found
Код 302 означает, что ресурс временно находится по другому адресу. Для Google это сигнал не переносить страницу окончательно: 302 не делает целевой адрес канонической версией автоматически, целевая страница может быть проиндексирована только при наличии других сигналов нормализации. Яндекс в этой части обработку 301 и 302 не различает: робот проиндексирует целевую страницу, если она доступна, независимо от того, каким из этих двух кодов настроен редирект — различие в каноничности специфично для Google. Используйте 302, когда точно знаете, что переадресация временная — например, на время технических работ.
303, 307, 308 — зачем нужны остальные коды
Все коды редиректов относятся к одному классу ответов сервера — 3xx (Redirection). Кроме 301 и 302 в HTTP есть ещё три кода редиректа, которые отличаются тем, что происходит с методом запроса:
- 303 See Other — клиент должен перейти на новый адрес методом
GET, даже если исходный запрос былPOST. Используется, чтобы обновление страницы после отправки формы не повторяло отправку. - 307 Temporary Redirect — временный редирект, но в отличие от 302 метод запроса сохраняется:
POSTостаётсяPOST. - 308 Permanent Redirect — постоянный аналог 301, но тоже сохраняет метод и тело запроса.
| Код | Название | Постоянство | Меняется метод запроса | Когда использовать |
|---|---|---|---|---|
| 301 | Moved Permanently | постоянный | может измениться на GET | смена адреса страницы, объединение страниц |
| 302 | Found | временный | может измениться на GET | временная недоступность, A/B-тест на коротком сроке |
| 303 | See Other | временный | меняется на GET | переход после отправки формы (POST) |
| 307 | Temporary Redirect | временный | не меняется | временная недоступность, если важно сохранить метод (например, API) |
| 308 | Permanent Redirect | постоянный | не меняется | постоянный перенос с сохранением метода и тела запроса |
Как настроить редирект
nginx
Для редиректов в nginx есть директивы return и rewrite. return сразу возвращает код и адрес, не обрабатывая запрос дальше:
location /old-page/ {
return 301 https://example.com/new-page/;
}
rewrite с флагом permanent или redirect меняет URI по регулярному выражению и возвращает 301 или 302 соответственно:
rewrite ^/old-page/$ /new-page/ permanent;
Apache (.htaccess)
В Apache за редиректы отвечает директива Redirect (модуль mod_alias). Аргумент permanent возвращает код 301, temp (по умолчанию) — 302:
Redirect permanent "/old-page/" "https://example.com/new-page/"
Для редиректа по шаблону адресов используется RedirectMatch с регулярным выражением:
RedirectMatch 301 "^/old/(.*)$" "/new/$1"
CMS
В большинстве систем управления сайтом редирект настраивается через панель администратора или через конфигурационный файл сервера. В любом случае после настройки проверяйте фактический ответ сервера — заголовки и код, — а не то, что показывает интерфейс админки.
Цепочки и циклы редиректов
Цепочка — это несколько редиректов подряд: адрес A ведёт на B, B ведёт на C, и так далее. Чем длиннее цепочка, тем дольше клиент добирается до конечной страницы. При переносе сайта со сменой URL Google рекомендует не перегружать цепочки — ограничиваться несколькими переходами, а не выстраивать длинную последовательность редиректов.
Цикл — частный случай, когда цепочка возвращается к уже посещённому адресу (A → B → A). Браузер обнаруживает это и показывает ошибку: сообщает, что сервер зацикливает запрос. Если зацикливание обнаруживает сам сервер, он может ответить кодом 500 Internal Server Error.
Как редирект влияет на SEO
Разница между 301 и 302 важна именно потому, что по-разному влияет на то, что поисковая система делает с индексом:
- 301 — Google переходит по новому адресу и интерпретирует это как причину считать целевую страницу канонической. Яндекс индексирует целевую страницу, если она доступна.
- 302 — у Google не передаёт этот сигнал автоматически: целевая страница становится канонической только при дополнительных сигналах нормализации, а не из-за самого факта редиректа. У Яндекса индексирование целевой страницы при 301 и 302 работает одинаково — «робот проиндексирует страницу, на которую установлено перенаправление, если она доступна» в обоих случаях; различие по каноничности между 301 и 302 — особенность именно Google, а не общее правило для обеих систем.
Если вы меняете домен сайта целиком, редиректы нужно сохранять долго: Google советует не отключать переадресацию минимум год, чтобы сигналы успели перейти на новый адрес.
Редирект — не единственный инструмент для дублей. Если несколько адресов должны остаться доступными, но у одного из них нужно указать основную версию, вместо переноса страницы используется canonical — о том, как выбрать между редиректом и canonical, мы рассказали отдельно.
Исторический пример того, как решение о редиректе меняет инфраструктуру сайта: директива Host в robots.txt раньше указывала Яндексу главное зеркало сайта, но её заменил постраничный 301-редирект — подробнее о том, как устроен файл robots.txt, в отдельной статье.
Типичные ошибки при настройке редиректов
| Ошибка | Последствие | Как исправить |
|---|---|---|
| 302 вместо 301 при постоянном переносе | Целевая страница не становится канонической автоматически | Используйте 301 (или 308), если уверены, что перенос окончательный |
| Длинная цепочка редиректов | Дольше загрузка, выше риск того, что переход не дойдёт до цели | Направляйте редирект сразу на конечный адрес, без промежуточных шагов |
| Редирект на нерелевантную страницу (например, на главную вместо похожей) | Пользователь и робот не получают ожидаемый контент | Ищите наиболее похожую действующую страницу для каждого адреса |
| Нет редиректа при объединении страниц | Старый адрес отвечает 404, внутренние и внешние ссылки на него теряют смысл | Настройте 301 со старого адреса на объединённую страницу |
| Цикл редиректов (адрес ссылается сам на себя через цепочку) | Браузер показывает ошибку зацикливания, сервер может ответить 500 | Проверяйте итоговую цепочку после каждого изменения конфигурации |
Если страница после редиректа не попадает в индекс или ведёт себя не так, как ожидалось, причина может быть не в самом редиректе — подробнее о том, как страницы попадают и выпадают из индекса, в статье об индексации.
Частые вопросы
Нужно ли удалять старую страницу после настройки редиректа?
Нет технического требования удалять контент — достаточно, чтобы страница отвечала кодом из диапазона 3xx, а не кодом 200.
Сколько редиректов подряд допустимо?
Точного числа источники не называют; Google рекомендует не выстраивать длинные цепочки при переносе сайта. На практике — чем короче цепочка, тем надёжнее переход.
Передаётся ли «вес» страницы через 302?
У Google 302 не делает целевую страницу канонической автоматически: это происходит только при дополнительных сигналах нормализации, а не из-за самого факта временного редиректа. У Яндекса этот вопрос стоит иначе: индексирование целевой страницы при 301 и 302 работает одинаково, если страница доступна — различие по каноничности специфично для Google.
Можно ли редиректить удалённую страницу на главную?
Технически можно, но для пользователя и робота это менее релевантно, чем переход на похожую действующую страницу. Правильный выбор цели редиректа — отдельная задача для каждого адреса.
Нужен ли редирект при смене протокола с http на https?
Да, механика та же: сервер должен отвечать 3xx-кодом с новым адресом в Location.
Источники
Документация, на которую опирается статья (проверено 21 октября 2026 г.):
- RFC 9110: HTTP Semantics, §15.4.
- MDN: HTTP response status codes; Redirections in HTTP.
- Google Search Central: Редиректы и Google Поиск; Перенос сайта со сменой URL.
- Яндекс Вебмастер, справка: Справочник HTTP-кодов.
- nginx docs: Module ngx_http_rewrite_module.
- Apache docs: Module mod_alias.
Настроенные когда-то редиректы часто остаются без присмотра после следующих релизов. Проверим правила переадресации и ответы сервера в рамках технического SEO. → Обсудить техническое SEO