Редирект 307
Редирект 307 - это HTTP-код состояния (307 Temporary Redirect), который сообщает браузерам и поисковым системам, что URL был временно перенесён на другой адрес. Он похож на редирект 302, но с одним критическим отличием: исходный HTTP-метод (GET, POST и т. д.) и тело запроса должны быть сохранены в точности при следовании по редиректу.
Редирект 307 - это HTTP-код состояния (307 Temporary Redirect), который сообщает браузерам и поисковым системам, что URL был временно перенесён на другой адрес. Он похож на редирект 302, но с одним критическим отличием: исходный HTTP-метод (GET, POST и т. д.) и тело запроса должны быть сохранены в точности при следовании по редиректу.
Почему это важно
Поскольку редирект 307 чётко сигнализирует о временном переносе, сохраняя метод запроса, он предотвращает потерю данных в сценариях с отправкой POST-форм или вызовами API. Когда поисковые системы получают ответ 307, они сохраняют исходный URL в своём индексе и не передают ссылочный вес новому URL. Это означает, что SEO-ценность исходного URL остаётся полностью нетронутой после удаления временного редиректа. Однако длительное поддержание редиректа 307 заставляет поисковые системы многократно посещать исходный URL, расходуя краулинговый бюджет. Если временная ситуация стала постоянной, рекомендуется перейти на редирект 301 или 308.
Отличие от 302
| Характеристика | 307 (Temporary Redirect) | 302 (Found) |
|---|---|---|
| Сохранение HTTP-метода | Строго сохраняется (POST остаётся POST) | Метод может измениться (POST может стать GET) |
| Определение в стандарте | Чётко определён в HTTP/1.1 | Существует с HTTP/1.0, но обработка метода неоднозначна |
| Поисковый индекс | Исходный URL сохраняется | Исходный URL сохраняется |
| Передача ссылочного веса | Не передаётся | Не передаётся |
| Основной сценарий использования | Временные переносы с сохранением POST | Общие временные переносы |
У кода состояния 302 есть историческая неоднозначность: согласно старым стандартам, некоторые браузеры преобразовывали POST-запросы в GET при следовании по 302. Код 307 был введён в спецификации HTTP/1.1, чтобы устранить эту неоднозначность. Когда данные POST не должны быть потеряны, 307 - более безопасный выбор, чем 302.
Сценарии использования
- Техническое обслуживание сервера: когда трафик нужно временно направить на другой сервер или страницу технического обслуживания, редирект 307 обеспечивает плавный возврат к исходному URL после завершения обслуживания.
- A/B-тестирование: временное направление части пользователей на другую версию страницы с сохранением позиций исходного URL в поиске.
- HSTS (HTTP Strict Transport Security): браузеры внутренне используют код состояния 307 при перенаправлении HTTP-запросов на HTTPS. Это поведение на уровне браузера, не требующее отдельной настройки сервера.
- Временный перенос POST-эндпоинта: когда отправку форм или запросы на обработку платежей, которые должны сохранять метод POST, нужно временно перенаправить на другой эндпоинт, редирект 307 незаменим.
Источники:
Связанные материалы inblog
Чем помогает inblog
Панель управления inblog использует коды состояния 307 для временных редиректов.