Saturday, April 9, 2011

Apache "Options MultiViews"

#เราเอง เกลียด option MultiViews ของ Apache

พื้นฐานความคิดของ MultiViews น่าจะอ่านได้ที่นี่:

http://httpd.apache.org/docs/current/content-negotiation.html

Content Negotiation กล่าวสั้นๆคือเป็นกระบวนการของ Apache ที่จะช่วยเหลือ client ที่สร้าง request มาร้องขอข้อมูลโดยที่คำร้องที่ client ส่งมานั้นอาจจะไม่สมบูรณ์แต่ Apache ก็จะช่วยเดาให้และส่งข้อมูลออกไป ตัวอย่างเช่น client ร้องขอไฟล์ (หรือ directory) hello แต่ Apache ตรวจดูบน VirtualHost แล้วไม่พบไฟล์นี้ พบแต่ hello.php ดังนั้น Apache จึงส่ง output จาก hello.php ไปให้ client แทน

ดูเผินๆก็คงเห็นว่ามันฉลาดดี หาไม่เจอก็เลือกเอาอันที่ใกล้เคียงตอบกลับไปให้... แต่ทว่า เราเองไม่ชอบส่ิงอันใดที่มันไม่ชัดเจน คาดเดาลำบาก ดู url เสร็จต้องมาเดาชื่อไฟล์ต่อ แล้วถ้ามันมี hello.php, hello.pl, hello.cgi, hello.jpg อยู่ใน directory เดียวกันหละ จะเอาอย่างไร

โดยปกติเราจึงมักที่จะ disable option MultiViews นี้ไปเสีย

0 comments:

Post a Comment