Битлента
Ошибки и коды3 мин чтения·

HTTP 301 и 302: в чём разница между постоянным и временным редиректом

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

Как устроено перенаправление

Когда сервер отвечает кодом 3хх, он не отдаёт страницу, а указывает браузеру адрес, по которому нужно обратиться. Адрес лежит в заголовке Location, и браузер сам переходит по нему, обычно так быстро, что вы не замечаете смены. Это и есть редирект.

Коды 301 и 302 самые известные. Первый означает, что ресурс переехал навсегда и новый адрес должен считаться основным. Второй означает временное перемещение: старый адрес остаётся главным, а перенаправление действует на время. Есть и родственные коды 307 и 308, которые сохраняют метод запроса, но для повседневной работы важнее понимать пару 301 и 302.

Разница для браузера и поисковых систем

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

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

Когда применять какой код

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

Если не уверены, какой нужен, спросите себя: вернётся ли когда-нибудь старый адрес в работу? Если да, выбирайте временный редирект. Если нет, постоянный. Также избегайте цепочек, когда один редирект ведёт на другой: каждый лишний шаг замедляет загрузку и теряет часть сигналов.

🛡️ Остались проблемы с соединением?
Можно пользоваться постоянно: российские приложения работают, включать и выключать ничего не нужно. Без карты и регистрации, настройка за пару минут.
Попробовать бесплатно

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

Откройте вкладку сети в инструментах браузера с сохранением журнала, введите адрес и посмотрите, какие запросы выполнились, каким кодом каждый ответил и куда указывает Location. То же можно сделать утилитой командной строки, которая выводит заголовки без загрузки тела.

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

Практические замечания для владельца сайта

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

Следите за единообразием. Выберите один вариант адреса: с «www» или без, с косой чертой в конце или без, защищённый протокол. Остальные варианты перенаправляйте на выбранный одним шагом. Внутренние ссылки и карту сайта обновите так, чтобы они сразу указывали на конечные адреса и не гоняли посетителей по редиректам. Периодически прогоняйте список важных страниц через проверку заголовков: после обновления системы управления сайтом правила иногда меняются незаметно, и цепочки появляются вновь.

Проблемы и циклы

Самая известная проблема — бесконечная череда перенаправлений, когда адрес А ведёт на Б, а Б обратно на А. Браузер прекращает попытки и показывает ошибку о слишком большом числе перенаправлений. Причины: конфликт правил на веб-сервере и в самом приложении, разные настройки схемы протокола за прокси, неверные значения в настройках адреса сайта.

Если вы посетитель, очистите файлы cookie сайта и кеш: иногда цикл вызывает устаревший файл. Владельцу нужно проверить цепочку по шагам и удалить дублирующее правило.

Если вы подозреваете, что цикл возникает из-за вашего браузера, откройте страницу в другом браузере или в приватном окне. Если цикл повторяется везде, причина на стороне сайта. Владельцу полезно посмотреть, какие правила срабатывают для этого адреса, и временно отключить лишние по одному, наблюдая за результатом.

🛡️ Остались проблемы с соединением?
Можно пользоваться постоянно: российские приложения работают, включать и выключать ничего не нужно. Без карты и регистрации, настройка за пару минут.
Попробовать бесплатно
http301302редирект

Часто задаваемые вопросы

Читайте также