意義
伺服器無法以用戶端 Accept 標頭所允許的任何格式產生回應。
常見原因
- Accept 要求 API 不支援的類型,例如 application/xml
- 過於嚴格的 Accept-Language 或 Accept-Encoding
- 安全模組拒絕不尋常的 Accept 標頭
解決方法
用戶端或訪客
送出 Accept: application/json 或 */*,或移除過於嚴格的 Accept-* 標頭。
網站或 API 的維護者
盡可能退回預設表示而非回傳 406,並在本文中列出可用的類型。
回應範例
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."
} 規範
常見問題
› 406 與 415 的差別?
406 關乎用戶端想收到什麼(Accept);415 關乎用戶端送出了什麼(Content-Type)。
› mod_security 為什麼回傳 406?
某些規則集把 406 當作通用的封鎖狀態碼;請查看 WAF 紀錄。