GORAGOD.com

การเปิดใช้งาน Method PUT DELETE OPTIONS บน Apache2

โดยปกติแล้ว Apache จะรองรับ Method แค่ GET กับ POST เท่านั้น ทำให้เราไม่สามารถรียกใช้งาน Method อื่นๆ เช่น PUT DELETE OPTIONS ด้วย API ได้ หากพยายามเชื่อมต่อด้วย Method ดังกล่าวจะเกิด Error 405 Method Not Allowed ขึ้น

การแก้ไข (ตัวอย่างนี้ทำบน Apache2 Ubuntu) ทำได้โดยการเพิ่มการอนุญาต Method ที่ต้องการลงในไฟล์ apache2.conf
<Directory /var/www/htdocs/>
    Options Indexes FollowSymLinks
    AllowOverride None
    Require all granted
    <Limit GET POST PUT DELETE OPTIONS>
        Order allow,deny
        # You might want something a little more secure here, this is a dev setup
        Allow from all
    </Limit>

</Directory>

ส่วนสีแดงคือสิ่งที่เราต้องเพิ่มเข้าไปครับ เป็นการระบุ Method ที่ต้องการลงใน  <Limit GET POST PUT DELETE OPTIONS> จากนั้นทำการ restart Apache เป็นอันเสร็จกระบวนการครับ

สำหรับระบบปฏิบัติการอื่นๆ ก็ลองหาดูนะครับที่ไฟล์ อาจจะเป็น apache2.conf หรือ httpd.conf หรือชื่ออื่น จุดสังเกตุคืออยู่ภายใต้ section Directory ที่เป็นโฟลเดอร์ของเว็บไซต์