การป้องกันการแสดงรายชื่อไฟล์ของ Server ด้วย htaccess (Directory
โดยปกติแล้วถ้าเราทำการเรียกไดเร็คทอรี่ใดๆบน Server โดยที่ไดเร็คทอรี่นั้นๆไม่มี default page (เช่น index.php หรือ index.html) จะทำให้ Browser แสดงรายการไฟล์ทั้งหมดในไดเร็คทอรี่นั้นๆออกมา (Directory Listings) เช่น หากเราเรียก xxx.com/img/ Browser ก็จะทำการแสดงรายชื่อรูปทั้งหมดที่มีในโฟลเดอร์ img/ บน Server เป็นต้น
โดยปกติ Server สมัยใหม่มักจะปิดการทำงานในส่วนนี้ไว้ไม่ให้ทำงานครับ เพื่อเป็นการป้องกันการตรวจสอบว่ามีไฟล์ใดบน Server บ้าง (จาก Hacker) แต่เราก็สามารถควบคุมการเปิดปิด ได้ครับ ด้วย .htaccess
วิธีการง่ายสุดที่จะป้องกันการ list ไฟล์ ก็เพียงแค่สร้าง index.php หรือ index.html เปล่าๆไว้ในไดเร็คทอรี่(ทุกไดเร็คทอรี่) ครับ เนื่องจากโดยปกติแล้ว หากเราเรียกชื่อ ไดเร็คทอรี่ ใดๆ โดยไม่ระบุหน้าเพจ Server จะแสดงหน้านี้ก่อนเสมอ
วิธีที่ 2 กำหนดใน .htaccess
สำหรับเปิดใช้งาน แสดงลิสต์รายชื่อไฟล์
สำหรับปิดการใช้งาน ไม่ให้แสดงรายชื่อไฟล์ Server จะคืนค่า Error 403 มาแทนครับ
การกำหนดให้ไม่แสดงเฉพาะไฟล์บางนามสกุล เช่นไฟล์ รูปภาพ .jpg .gif
Server จะไม่แสดงรายชื่อไฟล์รูปภาพ .jpg และ .gif (แต่ไฟล์อื่นยังแสดงตามปกติ) หรือ
ซี่งจะมีผลเหมือนกับปิดการแสดง Directory Listing
การกำหนดให้ Server แสดงไฟล์ฺ index.html (หรือไฟล์ใดๆ) ในกรณีที่ไม่ระบุ page มา
เทคนิคนี้เราอาจประยุกต์ใช้ในการแสดงข้อความเตือน ในกรณีที่มีผู้พยายามเข้าถึงหน้าเว็บโดยไม่ได้กำหนด URL ให้ครบถ้วนก็ได้ หรือถูกใช้เพื่อหวังผลในการแสดงรายชื่อไฟล์ โดยอาจกำหนดให้ไปแสดงหน้า Error ก็ได้
โดยปกติ Server สมัยใหม่มักจะปิดการทำงานในส่วนนี้ไว้ไม่ให้ทำงานครับ เพื่อเป็นการป้องกันการตรวจสอบว่ามีไฟล์ใดบน Server บ้าง (จาก Hacker) แต่เราก็สามารถควบคุมการเปิดปิด ได้ครับ ด้วย .htaccess
วิธีการง่ายสุดที่จะป้องกันการ list ไฟล์ ก็เพียงแค่สร้าง index.php หรือ index.html เปล่าๆไว้ในไดเร็คทอรี่(ทุกไดเร็คทอรี่) ครับ เนื่องจากโดยปกติแล้ว หากเราเรียกชื่อ ไดเร็คทอรี่ ใดๆ โดยไม่ระบุหน้าเพจ Server จะแสดงหน้านี้ก่อนเสมอ
วิธีที่ 2 กำหนดใน .htaccess
Options +Indexes
สำหรับเปิดใช้งาน แสดงลิสต์รายชื่อไฟล์
Options -Indexes
สำหรับปิดการใช้งาน ไม่ให้แสดงรายชื่อไฟล์ Server จะคืนค่า Error 403 มาแทนครับ
การกำหนดให้ไม่แสดงเฉพาะไฟล์บางนามสกุล เช่นไฟล์ รูปภาพ .jpg .gif
IndexIgnore *.jpg *.gif
Server จะไม่แสดงรายชื่อไฟล์รูปภาพ .jpg และ .gif (แต่ไฟล์อื่นยังแสดงตามปกติ) หรือ
IndexIgnore *
ซี่งจะมีผลเหมือนกับปิดการแสดง Directory Listing
การกำหนดให้ Server แสดงไฟล์ฺ index.html (หรือไฟล์ใดๆ) ในกรณีที่ไม่ระบุ page มา
DirectoryIndex index.html
เทคนิคนี้เราอาจประยุกต์ใช้ในการแสดงข้อความเตือน ในกรณีที่มีผู้พยายามเข้าถึงหน้าเว็บโดยไม่ได้กำหนด URL ให้ครบถ้วนก็ได้ หรือถูกใช้เพื่อหวังผลในการแสดงรายชื่อไฟล์ โดยอาจกำหนดให้ไปแสดงหน้า Error ก็ได้