Вебсправочник
Основы веб-разработки

301, 302, 307 и 308: перенаправления и метод запроса

Статус перенаправления сообщает клиенту новый адрес и влияет на постоянство перехода и обработку метода запроса.

Назначение

Статус перенаправления сообщает клиенту новый адрес и влияет на постоянство перехода и обработку метода запроса.

Как это работает

307 и 308 сохраняют метод и тело при автоматическом повторении, а 301 и 302 исторически допускают изменение POST на GET. 303 предназначен для получения результата другим запросом, обычно GET.

Пример

HTTP/1.1 308 Permanent Redirect
Location: https://example.com/new-path

Что должно получиться

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

Граница применения и частая ошибка

Не перенаправляйте формы по общей схеме без проверки метода. Тело запроса может повториться на новом адресе или потеряться в зависимости от статуса и клиента.

Самостоятельная проверка

На локальном обработчике сравните переход GET и POST. В Network посмотрите цепочку запросов и метод после редиректа; тестовые данные не должны содержать реальные секреты.

Самостоятельный учебный материал. Техническая документация: первоисточник по теме ↗. Если результат отличается, проверьте код и версию браузера.