TrueURL
TrueURL

選單

406 無法接受

伺服器無法產生符合用戶端 Accept 標頭(格式、語言、編碼)的回應,也不願改傳預設版本。

原因短語
Not Acceptable
是否為重新導向
否
預設可快取
否

406 Not Acceptable 表示目標資源沒有任何表示法符合用戶端的協商標頭(例如 Accept、Accept-Language 或 Accept-Encoding),而伺服器也不願傳送預設的表示法。回應主體應列出可用的表示法,讓使用者或用戶端選擇。

實務上,大多數伺服器會忽略無法滿足的偏好,直接傳送預設的表示法,RFC 9110 也明確允許這種做法。因此 406 大多出現在只提供特定媒體類型的 API 中,例如收到 Accept: application/xml 的 JSON API。

有些代管服務供應商會將 ModSecurity 等安全模組設定為以 406 回應遭封鎖的要求,因此 406 也可能是防火牆的判斷結果,而不是協商問題。

回應範例

HTTP
HTTP/1.1 406 Not Acceptable
Date: Fri, 06 Nov 2026 10:15:32 GMT
Vary: Accept
Content-Type: application/json
Content-Length: 57

{"error":"Available formats: application/json, text/csv"}

SEO 與重新導向檢查

爬蟲送出的 Accept 標頭涵蓋範圍很廣,因此不應該收到 406;如果收到了,該網址會被當成 4xx 錯誤處理,不會編入索引。如果重新導向檢查回傳 406,網頁在瀏覽器中卻能正常載入,請檢查您自行加入的 Accept 標頭,或是比對使用者代理程式或網址的安全規則。

常見原因與使用情境

  • API 只支援 JSON,用戶端卻要求 XML 或其他格式。
  • 嚴格的 Accept-Language 設定找不到相符的翻譯,也沒有備用語言。
  • 共享主機上的 ModSecurity 或 WAF 規則以 406 封鎖要求。

網址重新導向檢查

使用免費的 TrueURL 重新導向檢查工具,逐一查看網址在每個躍點回傳的狀態碼。