Co to znaczy
Zasób jest tymczasowo pod innym URL, a klient musi powtórzyć tam żądanie z tą samą metodą i treścią.
Typowe przyczyny
- Wewnętrzne przekierowania HSTS z http na https w przeglądarkach
- Tymczasowe przeniesienia endpointów API
- Load balancery przekierowujące do innego regionu
Jak naprawić
Jako klient lub odwiedzający
Powtórz to samo żądanie, łącznie z treścią POST, pod Location. Sprawdź, czy twój klient HTTP podąża za 307 dla metod innych niż GET.
Jako właściciel strony lub API
Używaj 307 zamiast 302, gdy POST, PUT lub DELETE nie mogą zmienić się w GET.
Przykładowa odpowiedź
HTTP/1.1
HTTP/1.1 307 Temporary Redirect
Date: Tue, 07 Oct 2025 09:30:00 GMT
Server: nginx
Location: https://api.example.com/v2/upload
Content-Length: 0 Specyfikacja
FAQ
› Dlaczego widzę 307 Internal Redirect w Chrome?
Strona jest na liście HSTS, więc Chrome sam zmienia http na https, zanim jakiekolwiek żądanie opuści przeglądarkę.
› 307 czy 308?
Oba zachowują metodę; 307 jest tymczasowe, 308 stałe.