DevToolPal
ไทย
4xx ข้อผิดพลาดฝั่งไคลเอนต์

405 Method Not Allowed

ไม่อนุญาตเมธอดนี้

ความหมาย

URL มีอยู่แต่ไม่รองรับเมธอด HTTP ที่ใช้ header Allow แสดงเมธอดที่ใช้ได้

สาเหตุที่พบบ่อย

  • POST ไปยังไฟล์สแตติกหรือ route ที่รับเฉพาะ GET
  • ฟอร์มส่งไปยัง endpoint ผิด
  • route กำหนดเมธอดไว้ที่พาธอื่น เช่น พาธที่มีเครื่องหมายทับท้าย

วิธีแก้ไข

สำหรับไคลเอนต์หรือผู้เยี่ยมชม

ตรวจ header Allow และเอกสาร API และให้แน่ใจว่าเมธอดกับ URL ตรงกัน

สำหรับผู้ดูแลเว็บไซต์หรือ API

ส่ง Allow กับ 405 เสมอ ตรวจการกำหนดเส้นทางเรื่องความต่างของเครื่องหมายทับท้าย และดูว่าโฮสติ้งสแตติกไม่ได้รับพาธ API ไว้เอง

ตัวอย่างการตอบกลับ

HTTP/1.1
HTTP/1.1 405 Method Not Allowed
Date: Tue, 07 Oct 2025 09:30:00 GMT
Server: nginx
Allow: GET, HEAD, POST
Content-Type: application/problem+json

{
  "type": "about:blank",
  "title": "Method Not Allowed",
  "status": 405,
  "detail": "DELETE is not supported on /users."
}

ข้อกำหนด

RFC 9110 §15.5.6

คำถามที่พบบ่อย

› 405 หรือ 404

404: ที่นี่ไม่มีอะไร 405: ที่นี่มีบางอย่าง แต่ไม่ใช่สำหรับเมธอดนี้

› ทำไม POST บนโฮสติ้งสแตติกได้ 405

โฮสติ้งสแตติกให้บริการเฉพาะ GET/HEAD การ POST ต้องใช้ฟังก์ชันฝั่งเซิร์ฟเวอร์หรือ endpoint ฟอร์มภายนอก