ความหมาย
URL ของคำขอยาวกว่าที่เซิร์ฟเวอร์ยินดีตีความ
สาเหตุที่พบบ่อย
- query string ขนาดใหญ่มาก เช่น ตัวกรองหรือข้อมูลที่เข้ารหัสใน URL
- วงวนการเปลี่ยนเส้นทางที่เพิ่มพารามิเตอร์ไปเรื่อย ๆ
- ใช้ GET ในกรณีที่ควรให้ POST เป็นตัวส่งข้อมูล
วิธีแก้ไข
สำหรับไคลเอนต์หรือผู้เยี่ยมชม
ย้ายข้อมูลขนาดใหญ่ไปไว้ใน body ของ POST และให้ URL ยาวไม่เกินราว 2,000 อักขระ
สำหรับผู้ดูแลเว็บไซต์หรือ API
แก้วงวนการเปลี่ยนเส้นทาง หาก URL ยาวเป็นเรื่องปกติ ให้เพิ่ม large_client_header_buffers ใน nginx หรือ LimitRequestLine ใน Apache
ตัวอย่างการตอบกลับ
HTTP/1.1
HTTP/1.1 414 URI Too Long
Date: Tue, 07 Oct 2025 09:30:00 GMT
Server: nginx
Content-Length: 0 ข้อกำหนด
คำถามที่พบบ่อย
› URL ยาวได้สูงสุดเท่าไร
สเปกไม่ได้กำหนดขีดจำกัดตายตัว เซิร์ฟเวอร์มักให้ 8 KB และเบราว์เซอร์ราว 2 MB แต่ควรให้ URL สั้นเพื่อความเข้ากันได้
› วงวนการเปลี่ยนเส้นทางทำให้เกิด 414 ได้ไหม
ได้ แต่ละทอดเพิ่มพารามิเตอร์จน URL ยาวเกินไป