10 ข้อมูลโค้ดและแฮ็ก htaccess ที่มีประโยชน์
เผยแพร่แล้ว: 2020-09-10.htaccess
เป็นไฟล์เดียวที่ผู้ดูแลเว็บทุกคนควรรู้และเข้าใจ ในระดับพื้นฐาน จะควบคุมการเข้าถึงไดเรกทอรีของไซต์ของคุณ แต่มีมากกว่าที่คุณสามารถทำได้ เนื่องจากตัวอย่างในโพสต์นี้จะแสดงให้คุณเห็น
หากคุณต้องการเรียนรู้พื้นฐานของ . .htaccess
คุณควรตรวจสอบบทความ Introduction to .htaccess ของเรา ซึ่งจะอธิบายทุกอย่างที่คุณจำเป็นต้องใช้ในการเริ่มต้นใช้งาน
คุณอาจชอบ WordPress SQL Query Snippets ที่มีประโยชน์เหล่านี้ หรือ snippets เหล่านี้ที่ทำให้ WordPress ใช้งานง่ายสำหรับลูกค้าของคุณ
1. การควบคุมการเข้าถึงไฟล์และไดเรกทอรี
การป้องกันด้วยรหัสผ่านเป็นสิ่งหนึ่ง แต่บางครั้ง คุณอาจต้องบล็อกผู้ใช้ทั้งหมดไม่ให้มีตัวเลือกในการเข้าถึงไฟล์หรือไดเรกทอรีเฉพาะ ซึ่งมักจะเกิดขึ้นกับโฟลเดอร์ระบบ เช่น โฟลเดอร์ includes
ซึ่งแอปพลิเคชันจะต้องเข้าถึง แต่ผู้ใช้ไม่จำเป็นต้องมีสิทธิ์
ในการดำเนินการนี้ ให้วางโค้ดนี้ลงในไฟล์ . .htaccess
แล้ววางลงในไดเร็กทอรี:
อย่างไรก็ตาม การดำเนินการนี้จะบล็อกการเข้าถึงของทุกคน รวมถึงคุณด้วย ในการให้สิทธิ์การเข้าถึง คุณต้องระบุที่อยู่ IP ของคุณ นี่คือรหัส:
xxx.xxx.xxx.xxx
คือ IP ของคุณ ตัวอย่างเช่น หากคุณแทนที่ตัวเลขสามหลักสุดท้ายด้วย 0/12
จะเป็นการระบุช่วงของ IP ภายในเครือข่ายเดียวกัน ซึ่งจะช่วยประหยัดปัญหาในการแสดงรายการ IP ที่อนุญาตทั้งหมดแยกกัน
หากคุณต้องการบล็อกการเข้าถึงไฟล์ใดไฟล์หนึ่ง รวมถึง . .htaccess
ด้วย ให้ใช้ข้อมูลโค้ดต่อไปนี้แทน:
ในทำนองเดียวกัน หากคุณต้องการอนุญาต IP ที่กำหนด ให้ระบุรายการด้วย allow from
.
หากคุณต้องการบล็อกการเข้าถึงไฟล์บางประเภท ให้ใช้สิ่งนี้แทน:

2. ปิดการใช้งานการเรียกดูไดเรกทอรี
เพื่อป้องกันการเรียกดูไดเร็กทอรี ให้เพิ่มสิ่งนี้:
อย่างไรก็ตาม หากคุณต้องการเปิดใช้งานการเรียกดูไดเรกทอรีด้วยเหตุผลบางประการ ให้เปลี่ยนเป็นดังต่อไปนี้:
3. เร่งความเร็วในการโหลดโดยการบีบอัดไฟล์
คุณสามารถบีบอัดไฟล์ประเภทใดก็ได้ ไม่ใช่แค่รูปภาพ ตัวอย่างเช่น ในการบีบอัดไฟล์ HTML ให้ใช้สิ่งนี้:
ในการบีบอัดไฟล์ TEXT ให้ใช้สิ่งนี้:
คุณยังสามารถบีบอัด JavaScript หรือเพิ่มการบีบอัดไฟล์หลายประเภทด้วยคำสั่งเดียว:
หรือหากคุณต้องการบีบอัดไฟล์ JavaScript, HTML และ CSS ทั้งหมดด้วย GZIP คุณสามารถใช้สิ่งนี้:
4. ปกป้องไซต์ของคุณจาก Hotlinking
หากคุณไม่ต้องการให้รูปภาพของคุณฮอตลิงก์ ให้เพิ่มสิ่งนี้ในไฟล์ . .htaccess
ของคุณ:
เพียงแทนที่ yourdomain.com ด้วยโดเมนของคุณเอง คุณก็พร้อมแล้ว
5. การบล็อกผู้เยี่ยมชมที่อ้างอิงจากโดเมนเฉพาะ
หากคุณมีผู้ใช้จากโดเมนใดโดเมนหนึ่งที่คุณไม่ยินดีต้อนรับ คุณสามารถแบนพวกเขาจากไซต์ของคุณได้ ตัวอย่างเช่น หากไซต์ของคุณอยู่ในตำแหน่งที่คุณไม่ต้องการให้มีการเข้าชม (เช่น ไซต์สำหรับผู้ใหญ่ ไซต์ blackhat ฯลฯ) คุณสามารถให้บริการไซต์เหล่านั้นด้วยหน้าต้องห้าม 403 หน้า คุณต้องเปิดใช้งาน mod_rewrite
แต่คุณควรจะใช้ได้เพราะโดยปกติเปิดอยู่ เพิ่มข้อมูลโค้ดนี้:
คุณต้องแทนที่ bannedurl1.com
และ bannedurl2.com
เป็นต้น ด้วยชื่อโดเมนที่คุณต้องการให้ขึ้นบัญชีดำ คุณอาจต้องการใช้แฟล็ก [NC]
เนื่องจากเป็นการระบุว่าชื่อโดเมนที่คุณป้อนไม่คำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ แฟล็ก [F]
ระบุการดำเนินการที่ต้องทำ - ในกรณีนี้เพื่อแสดงข้อผิดพลาดที่ต้องห้าม 403 หากคุณต้องการแบนหลายไซต์ ให้ใช้แฟล็ก [NC,OR]
สำหรับทุกโดเมนยกเว้นโดเมนสุดท้าย และหากคุณต้องการแบนโดเมนเดียว ให้ใช้แฟล็ก [NC]
เท่านั้น
6. การบล็อกคำขอจากตัวแทนผู้ใช้เฉพาะ
หากไฟล์บันทึกของคุณแสดงตัวแทนผู้ใช้เฉพาะ (บอทหรือสไปเดอร์) คุณสามารถเพิ่มสองสามบรรทัดใน .htaccess
และปฏิเสธไม่ให้เข้าถึงไซต์ของคุณ:
แทนที่ badbot1
, badbot1
ฯลฯ ด้วยชื่อของบอทจากไฟล์บันทึกของคุณ สิ่งนี้ควรทำให้โปรแกรมดังกล่าวอยู่ห่างจากไซต์ของคุณ
7. แคชไฟล์
อีกวิธีหนึ่งในการเร่งความเร็วในการโหลดไซต์ของคุณคือการแคชไฟล์ นี่คือสิ่งที่คุณต้องเพิ่มเพื่อแคชไฟล์:
คุณสามารถเพิ่มประเภทไฟล์เพิ่มเติม (หรือลบบางประเภท) ไปยังลำดับของไฟล์ที่แสดงในตัวอย่างนี้ ทำในสิ่งที่เหมาะกับคุณ คุณยังสามารถใช้ max-age
เพื่อระบุระยะเวลาเป็นวินาทีที่ไฟล์ของคุณจะอยู่ในแคช
8. การปิดใช้งานการแคชสำหรับไฟล์บางประเภท
หากคุณไม่ต้องการแคชไฟล์บางประเภท จะเป็นการง่ายกว่าที่จะไม่รวมไฟล์เหล่านั้นไว้ในลำดับของแคช อย่างไรก็ตาม บางครั้งไฟล์อาจได้รับแคชแม้ว่าคุณจะไม่ได้แสดงรายการไฟล์เหล่านั้นไว้อย่างชัดเจน และในกรณีนี้ คุณอาจต้องการปิดใช้งานการแคชสำหรับไฟล์เหล่านั้นเท่านั้น โดยส่วนใหญ่ คุณจะต้องปิดใช้งานการแคชสำหรับไฟล์ไดนามิก เช่น สคริปต์ นี่คือวิธีการ:
เพียงไพพ์ไฟล์ที่คุณต้องการปิดใช้งานการแคช เท่านี้ก็เรียบร้อย
9. ข้ามกล่องโต้ตอบดาวน์โหลด
ตามค่าเริ่มต้น เมื่อคุณพยายามดาวน์โหลดไฟล์จากเว็บเซิร์ฟเวอร์ คุณจะได้รับกล่องโต้ตอบที่ถามว่าคุณต้องการบันทึกไฟล์หรือเปิดไฟล์นั้น บทสนทนานี้สร้างความรำคาญให้กับไฟล์สื่อขนาดใหญ่หรือ PDF หากไฟล์ที่คุณอัปโหลดไปยังเซิร์ฟเวอร์ของคุณมีไว้สำหรับดาวน์โหลด คุณสามารถบันทึกปัญหาให้ผู้ใช้และดำเนินการดาวน์โหลดโดยตรง นี่คือสิ่งที่คุณต้องตั้งค่าใน . .htaccess
:
10. การเปลี่ยนชื่อไฟล์ .htaccess
หากคุณต้องการเปลี่ยนชื่อไฟล์ . .htaccess
ด้วยเหตุผลบางประการ ซึ่งส่วนใหญ่เกี่ยวข้องกับการรักษาความปลอดภัย ทำได้ง่ายมาก ตามทฤษฎีแล้ว การเปลี่ยนชื่อไฟล์ . .htaccess
ไม่ควรทำให้เกิดปัญหากับแอปพลิเคชันที่ทำงานบนเซิร์ฟเวอร์ของคุณ แต่ถ้าบังเอิญคุณสังเกตเห็นปัญหาดังกล่าวหลังจากที่คุณเปลี่ยนชื่อไฟล์ ให้เปลี่ยนชื่อไฟล์กลับเป็นชื่อเดิม
คุณต้องอัปเดตรายการใด ๆ ในไฟล์เองหรือทุกที่ที่มีการกล่าวถึง . .htaccess
มิฉะนั้น คุณจะได้รับข้อผิดพลาดมากมาย
11. การเปลี่ยนหน้าดัชนีเริ่มต้น
หากคุณต้องการให้หน้าดัชนีของคุณแตกต่างจากค่าเริ่มต้น index.html
, index.php
, index.htm
ฯลฯ สามารถทำได้ง่ายมาก นี่คือสิ่งที่คุณต้องเพิ่มใน .htaccess
:
แทนที่ mypage.html
ด้วย URL จริงของหน้าที่คุณต้องการใช้เป็นดัชนี เท่านี้ก็เสร็จเรียบร้อย
12. การเปลี่ยนเส้นทางไปยังการเชื่อมต่อ https ที่ปลอดภัย
หากคุณกำลังใช้ HTTPS และต้องการเปลี่ยนเส้นทางผู้ใช้ไปยังหน้าที่ปลอดภัยของไซต์ของคุณ ให้ใช้สิ่งนี้:
13. การจำกัดการอัปโหลดไฟล์ใน PHP ขนาดสูงสุดของข้อมูลโพสต์ เวลาดำเนินการสคริปต์สูงสุด ฯลฯ
.htaccess
ให้คุณตั้งค่าบางอย่างที่ส่งผลโดยตรงต่อแอปพลิเคชัน PHP ของคุณ ตัวอย่างเช่น หากคุณต้องการกำหนดขีดจำกัดการอัปโหลดใน PHP เพื่อไม่ให้พื้นที่โฮสต์หมดเนื่องจากไฟล์ขนาดใหญ่ ให้ใช้สิ่งนี้:
แน่นอน คุณสามารถตั้งค่าเป็นอะไรก็ได้ที่คุณเห็นว่าเหมาะสม – 15 ล้าน (MB) ในตัวอย่างนี้ไม่ตายตัว คุณยังสามารถจำกัดขนาดโพสต์สูงสุดสำหรับการอัปโหลดใน PHP โดยเพิ่มสิ่งนี้:
ในทำนองเดียวกัน คุณสามารถเปลี่ยน 10M
เป็นค่าใดก็ได้ที่เหมาะกับคุณ หากคุณไม่ต้องการให้สคริปต์ทำงานตลอดไป คุณสามารถจำกัดเวลาดำเนินการได้โดยใช้สิ่งต่อไปนี้:
240
คือจำนวนวินาทีก่อนที่สคริปต์จะถูกยกเลิก และตามที่คุณเดา อาจเป็นค่าใดก็ได้ สุดท้าย หากคุณต้องการจำกัดเวลาที่สคริปต์สามารถแยกวิเคราะห์ข้อมูลที่ป้อน ให้ใช้สิ่งนี้:
และตั้งค่าเป็นวินาทีที่เหมาะกับคุณ
14. การปลอมแปลงประเภทไฟล์
บางครั้ง คุณไม่ต้องการให้ผู้ใช้ทราบประเภทไฟล์ของไฟล์ในไซต์ของคุณ วิธีหนึ่งในการซ่อนข้อมูลนี้คือถ้าคุณปลอมแปลงข้อมูลเหล่านี้ ตัวอย่างเช่น คุณสามารถทำให้ไฟล์ทั้งหมดของคุณดูเหมือนไฟล์ HTML หรือ PHP:
มีอะไรอีกมากมายที่สามารถทำได้ด้วย . .htaccess
ตัวอย่างเช่น คุณสามารถตั้งค่าการแปลอัตโนมัติสำหรับหน้าเว็บไซต์ของคุณ หรือตั้งค่าเขตเวลาของเซิร์ฟเวอร์ หรือลบ www ออกจาก URL หรือใช้รายการไดเรกทอรีแฟนซี ฯลฯ ไม่ว่าในกรณีใด ก่อนที่คุณจะเริ่มการทดลองกับ . .htaccess
ให้สำรองข้อมูลต้นฉบับเสมอ .htaccess
ดังนั้นหากสิ่งต่าง ๆ ไม่เป็นไปตามแผนที่วางไว้ คุณมีสำเนาการทำงานที่ต้องเปลี่ยนกลับเป็น