301 редирект: что это, чем отличается от 302 и как его настроить

301 редирект — самый частый инструмент при переезде сайта, смене адресов страниц и переходе на https. Разбираем простыми словами, что он делает, чем отличается от 302 и других кодов, как его настроить на популярных серверах и движках и как убедиться, что настроено правильно.

/old-page/301/new-page/200301Moved Permanently

Что такое 301 редирект

Когда браузер или поисковый робот запрашивает страницу, сервер отвечает кодом. 200 — «вот страница», 404 — «такой нет». А код 301 Moved Permanently означает «страница переехала навсегда, вот её новый адрес». Браузер сразу открывает новый адрес, посетитель этого почти не замечает.

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

301, 302, 307, 308 — в чём разница

КодЧто значитКогда использовать
301 Moved Permanentlyпереехала навсегдасмена адреса страницы, домена, переход на https, склейка www
308 Permanent Redirectнавсегда, и метод запроса сохраняетсято же, что 301, когда важно, чтобы отправка формы (POST) не превратилась в обычный переход
302 Foundвременно по другому адресуакция, страница на доработке, выбор языка или города
307 Temporary Redirectвременно, метод сохраняетсято же, что 302, для отправки форм и API
303 See Otherсмотрите другую страницупосле отправки формы — переход на страницу «спасибо»

Для поисковиков важно деление на постоянные (301, 308) и временные (302, 307). По постоянному редиректу Яндекс и Google со временем оставляют в индексе только новый адрес. По временному — сохраняют старый и считают, что скоро всё вернётся. Если переезд постоянный, а редирект временный, новый адрес может долго не набирать позиций.

Когда нужен 301 редирект

  • Переход на https — все адреса http:// ведут на https://.
  • Склейка зеркал — www.site.ru и site.ru это для поисковика два разных сайта; один вариант должен вести на другой.
  • Смена домена — каждая страница старого домена ведёт на ту же страницу нового.
  • Новая структура адресов — после смены движка или переделки каталога.
  • Удалённые страницы — снятый с продажи товар ведёт на похожий товар или раздел, а не в 404.
  • Дубли — один и тот же адрес со слешем и без, с index.php и без.

Как настроить 301 редирект

Apache: файл .htaccess

Большинство виртуальных хостингов работает на Apache, и редиректы настраиваются в файле .htaccess в корне сайта. Одна страница на другую:

Redirect 301 /old-page/ https://site.ru/new-page/

Весь сайт на https и без www — одним шагом, без цепочки:

RewriteEngine On
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} ^www\. [NC]
RewriteRule ^(.*)$ https://site.ru/$1 [R=301,L]

Весь старый домен на новый с сохранением адресов страниц:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?old-site\.ru$ [NC]
RewriteRule ^(.*)$ https://new-site.ru/$1 [R=301,L]

Важно: флаг R без числа означает 302, а не 301 — код нужно писать явно.

nginx

server {
    listen 80;
    server_name site.ru www.site.ru;
    return 301 https://site.ru$request_uri;
}

location = /old-page/ {
    return 301 /new-page/;
}

После правки конфигурации nginx нужно проверить и перечитать: nginx -t и nginx -s reload.

PHP

Если редирект зависит от логики сайта, его отдают из кода — до вывода любой страницы:

header('Location: https://site.ru/new-page/', true, 301);
exit;

Без третьего параметра 301 PHP отправит 302.

WordPress, 1С-Битрикс, Тильда

  • WordPress — плагином Redirection или правилами в .htaccess; в плагине проверьте, что выбран тип 301.
  • 1С-Битрикс — правилами в .htaccess в корне сайта; для https и склейки www это надёжнее, чем настройки внутри движка.
  • Тильда — в настройках сайта есть раздел для 301-редиректов: старый адрес и новый, построчно.

Частые ошибки

  • Цепочки. http → https → www → слеш в конце — четыре адреса вместо одного. Каждый шаг замедляет открытие страницы, а длинные цепочки роботы проходят не до конца. Правило должно вести сразу на окончательный адрес.
  • Циклы. Два правила противоречат друг другу, и адрес ведёт сам на себя. Браузер пишет «слишком много переадресаций», сайт не открывается вообще. Частая причина — https на стороне Cloudflare или хостинга вместе с правилом https в самом сайте.
  • Всё на главную. Удобно, но поисковики считают это «мягкой 404» и не переносят позиции.
  • Редирект на 404. Правило ведёт на адрес, которого нет: опечатка или страницу удалили позже.
  • Убрали редиректы через месяц. Старые ссылки на других сайтах, в закладках и рассылках живут годами — правила переезда лучше не удалять вовсе.

Как проверить редирект

Браузер для проверки не подходит: он запоминает 301 и в следующий раз переходит по нему без запроса к серверу. Удобнее проверять со стороны:

А чтобы узнать, что редирект или страница сломались после очередного обновления сайта, поставьте ключевые страницы на мониторинг доступности: SiteFalcon проверяет их круглосуточно и присылает уведомление в Telegram, если страница перестала открываться. Уведомления — на тарифах от 290 ₽ в месяц, первые 3 дня бесплатно.

Частые вопросы

Сколько времени поисковики переносят позиции после 301 редиректа?

Обычно от нескольких дней до нескольких недель — пока робот заново обойдёт старые адреса. Всё это время редиректы должны работать; удалять их не нужно и после переклейки.

Что лучше для переезда: 301 или 308?

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

Почему браузер всё ещё перекидывает по старому редиректу?

Браузеры запоминают 301 надолго и не спрашивают сервер повторно. Проверьте в режиме инкогнито или внешним инструментом — так видно, что отвечает сервер на самом деле.

Можно ли сделать 301 редирект без доступа к серверу?

Иногда да: в WordPress — плагином, в Тильде и других конструкторах — в настройках сайта. Но склейку www и переход на https надёжнее настраивать на уровне сервера или хостинга.

Мониторинг сайтов 24/7Доступность, SSL, домен, DNS, формы, безопасность и отчёт клиенту. Уведомления в Telegram — от 290 ₽ в месяц.
Начать бесплатно