Co to znaczy
Serwer nie może wygenerować odpowiedzi w żadnym formacie dozwolonym przez nagłówki Accept klienta.
Typowe przyczyny
- Accept prosi o typ nieobsługiwany przez API, np. application/xml
- Zbyt restrykcyjne nagłówki Accept-Language lub Accept-Encoding
- Moduły bezpieczeństwa odrzucające nietypowe nagłówki Accept
Jak naprawić
Jako klient lub odwiedzający
Wyślij Accept: application/json lub */* albo usuń zbyt restrykcyjne nagłówki Accept-*.
Jako właściciel strony lub API
Tam, gdzie to możliwe, zamiast 406 zwróć domyślną reprezentację i wymień dostępne typy w treści.
Przykładowa odpowiedź
HTTP/1.1
HTTP/1.1 406 Not Acceptable
Date: Tue, 07 Oct 2025 09:30:00 GMT
Server: nginx
Content-Type: application/problem+json
{
"type": "about:blank",
"title": "Not Acceptable",
"status": 406,
"detail": "Available representations: application/json."
} Specyfikacja
FAQ
› 406 czy 415?
406 dotyczy tego, co klient chce otrzymać (Accept). 415 dotyczy tego, co klient wysłał (Content-Type).
› Dlaczego mod_security zwraca 406?
Niektóre zestawy reguł używają 406 jako ogólnego statusu blokady; sprawdź logi WAF.