ความหมาย
เซิร์ฟเวอร์สร้างการตอบกลับในฟอร์แมตที่ header Accept ของไคลเอนต์อนุญาตไม่ได้เลย
สาเหตุที่พบบ่อย
- Accept ขอชนิดที่ API ไม่รองรับ เช่น application/xml
- header Accept-Language หรือ Accept-Encoding เข้มงวดเกินไป
- โมดูลความปลอดภัยปฏิเสธ header Accept ที่ผิดปกติ
วิธีแก้ไข
สำหรับไคลเอนต์หรือผู้เยี่ยมชม
ส่ง Accept: application/json หรือ */* หรือลบ header Accept-* ที่เข้มงวดเกินไป
สำหรับผู้ดูแลเว็บไซต์หรือ API
เมื่อเป็นไปได้ ให้ใช้รูปแบบเริ่มต้นแทน 406 และแสดงชนิดที่มีให้ใน body
ตัวอย่างการตอบกลับ
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 เป็นสถานะบล็อกทั่วไป ตรวจ log ของ WAF