Назад к вопросам
Middle
124
questionbank

В чём отличие между 306 и 307 Redirect'ами?

Sobes Copilot

Получайте ответы в реальном времени

Ответ от нейросети

sobes.tech AI

306 – это не стандартный HTTP-статус, он был зарезервирован, но не использовался и не рекомендуется к применению. 307 (Temporary Redirect) указывает, что ресурс временно перемещен, и клиент должен повторить запрос по новому URI с сохранением метода запроса (GET остается GET, POST остается POST и т.д.).

Сравнение 307 и 302 (Found), который часто используется для временных перенаправлений, но исторически клиенты могли менять метод с POST на GET при перенаправлении:

Статус Название Описание Изменение метода запроса
302 Found Ресурс временно доступен по другому URI. Клиенты могут менять метод. Возможно
307 Temporary Redirect Ресурс временно доступен по другому URI. Клиенты не должны менять метод. Не происходит

Пример использования 307 в PHP:

<?php
// Временное перенаправление
header("HTTP/1.1 307 Temporary Redirect");
header("Location: /new_temporary_location");
exit();