ปิดใช้งานรายการ Apache Web Directory โดยใช้ไฟล์ .htaccess
การรักษาความปลอดภัยเว็บเซิร์ฟเวอร์ apache ของคุณถือเป็นงานที่สำคัญที่สุดอย่างหนึ่ง โดยเฉพาะอย่างยิ่งเมื่อคุณตั้งค่าเว็บไซต์ใหม่
ตัวอย่างเช่น หากคุณสร้างไดเรกทอรีเว็บไซต์ใหม่ชื่อ “tecmint” ภายใต้เซิร์ฟเวอร์ Apache ของคุณ (/var/www/tecmint หรือ /var/www/html/ tecmint) และลืมวางไฟล์ “index.html” ไว้ในนั้น คุณอาจแปลกใจที่ทราบว่าผู้เยี่ยมชมเว็บไซต์ของคุณทุกคนสามารถรับรายการไฟล์และโฟลเดอร์ที่สำคัญทั้งหมดของคุณได้อย่างง่ายดาย โดยพิมพ์ http://www.example.com/tecmint ในเบราว์เซอร์
ในบทความนี้ เราจะแสดงวิธีปิดใช้งานหรือป้องกันรายการไดเร็กทอรีของเว็บเซิร์ฟเวอร์ Apache ของคุณโดยใช้ไฟล์ .htaccess
นี่คือวิธีที่รายการไดเรกทอรีจะแสดงต่อผู้เข้าชมของคุณเมื่อไม่มี index.html อยู่ในนั้น..
สำหรับผู้เริ่มต้น .htaccess (หรือ การเข้าถึงไฮเปอร์เท็กซ์) เป็นไฟล์ที่ช่วยให้เจ้าของเว็บไซต์สามารถควบคุมตัวแปรสภาพแวดล้อมของเซิร์ฟเวอร์ได้ เช่นเดียวกับตัวเลือกที่สำคัญอื่น ๆ เพื่อปรับปรุงฟังก์ชันการทำงานของเขา/ เว็บไซต์ของเธอ
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับไฟล์สำคัญนี้ โปรดอ่านบทความต่อไปนี้เพื่อรักษาความปลอดภัยเว็บเซิร์ฟเวอร์ Apache ของคุณโดยใช้วิธี .htaccess:
- 25 เคล็ดลับ Apache Htaccess เพื่อรักษาความปลอดภัยเว็บเซิร์ฟเวอร์ Apache
- รหัสผ่านป้องกันไดเรกทอรีเว็บ Apache โดยใช้ไฟล์ .htaccess
ด้วยวิธีการง่ายๆ นี้ ไฟล์ .htaccess จะถูกสร้างขึ้นในไดเร็กทอรีใดๆ และ/หรือทุกไดเร็กทอรีในแผนผังไดเร็กทอรีของเว็บไซต์ และจัดเตรียมคุณลักษณะต่างๆ ให้กับไดเร็กทอรีบนสุด ไดเร็กทอรีย่อย และไฟล์ที่อยู่ภายในไดเร็กทอรีเหล่านั้น
ก่อนอื่น ให้เปิดใช้งานไฟล์ .htaccess สำหรับเว็บไซต์ของคุณในไฟล์การกำหนดค่า apache หลัก
sudo vi /etc/apache2/apache2.conf #On Debian/Ubuntu systems
sudo vi /etc/httpd/conf/httpd.conf #On RHEL/CentOS systems
จากนั้นมองหาส่วนด้านล่างนี้ โดยที่ค่าของคำสั่ง AllowOverride
จะต้องตั้งค่าเป็น AllowOverride All
<Directory /var/www/html/>
Options Indexes FollowSymLinks
AllowOverride All
</Directory>
อย่างไรก็ตาม หากคุณมีไฟล์ .htaccess อยู่แล้ว ให้สำรองข้อมูลดังต่อไปนี้ สมมติว่าคุณมีอยู่ใน /var/www/html/tecmint/( และต้องการปิดการใช้งานรายการของไดเรกทอรีนี้):
sudo cp /var/www/html/tecmint/.htaccess /var/www/html/tecmint/.htaccess.orig
จากนั้นคุณสามารถเปิด (หรือสร้าง ) ในไดเร็กทอรีเฉพาะเพื่อแก้ไขโดยใช้โปรแกรมแก้ไขที่คุณชื่นชอบ และเพิ่มบรรทัดด้านล่างเพื่อปิดรายการไดเร็กทอรี Apache:
Options -Indexes
รีสตาร์ทเว็บเซิร์ฟเวอร์ Apache ถัดไป:
-------- On SystemD based systems --------
sudo systemctl restart apache2
sudo systemctl restart httpd
-------- On SysVInit based systems --------
sudo /etc/init.d/apache2 restart
sudo /etc/init.d/httpd restart
ตอนนี้ตรวจสอบผลลัพธ์โดยพิมพ์ http://www.example.com/tecmint ในเบราว์เซอร์ คุณจะเห็นข้อความที่คล้ายกับข้อความต่อไปนี้
นั่นคือทั้งหมด! ในบทความนี้ เราได้อธิบายวิธีปิดการใช้งานรายการไดเรกทอรีบนเว็บเซิร์ฟเวอร์ Apache โดยใช้ไฟล์ .htaccess นอกจากนี้ เราจะพูดถึงอีกสองวิธีที่เป็นประโยชน์และง่ายดายเพื่อจุดประสงค์เดียวกันในบทความต่อๆ ไป จนกว่าจะถึงตอนนั้น เราจะเชื่อมต่อกัน
ตามปกติ โปรดใช้แบบฟอร์มคำติชมด้านล่างเพื่อส่งความคิดเห็นของคุณเกี่ยวกับบทช่วยสอนนี้ถึงเรา