โฮมเพจ » WordPress » 15 ตัวอย่าง. htaccess ที่มีประโยชน์สำหรับเว็บไซต์ WordPress ของคุณ

    15 ตัวอย่าง. htaccess ที่มีประโยชน์สำหรับเว็บไซต์ WordPress ของคุณ

    มี กำหนดค่าไฟล์. htaccess เป็นสิ่งสำคัญหากคุณต้องการ เพิ่มความปลอดภัย และ ลดช่องโหว่ บนเว็บไซต์ WordPress ของคุณ โดยปกติแล้วเป้าหมายหลักของการสร้าง ไฟล์. htaccess ที่กำหนดเอง คือการป้องกันไม่ให้ไซต์ของคุณถูกแฮ็ค แต่ก็เป็นวิธีที่ยอดเยี่ยมในการจัดการการเปลี่ยนเส้นทางและจัดการงานที่เกี่ยวข้องกับแคช.

    .htaccess คือ ไฟล์การกำหนดค่า ใช้กับ Apache เว็บเซิร์ฟเวอร์ ไซต์ WordPress ส่วนใหญ่ ทำงานบนเซิร์ฟเวอร์ Apache, แม้ว่าส่วนเล็ก ๆ คือ ขับเคลื่อนโดย Nginx. ในบทความนี้คุณสามารถหา ชุดของตัวอย่างรหัส. htaccess, ส่วนใหญ่คุณสามารถใช้เพื่อรักษาความปลอดภัยเว็บไซต์ของคุณในขณะที่ส่วนที่เหลือใช้คุณสมบัติที่มีประโยชน์อื่น ๆ.

    อย่าลืม สำรองข้อมูลไฟล์. htaccess ก่อนที่คุณจะแก้ไขเพื่อให้คุณสามารถทำได้ตลอดเวลา กลับไปที่รุ่นก่อนหน้า ถ้ามีอะไรผิดพลาด.

    และหากคุณเป็นคนที่ไม่ได้สัมผัสกับไฟล์กำหนดค่าฉันขอแนะนำให้คุณ ระบบรักษาความปลอดภัย ปลั๊กอินที่น่าเชื่อถือที่สุด (และอาจเก่าที่สุด) ปลั๊กอินการรักษาความปลอดภัย. htaccess ฟรี ที่ตลาด.

    สร้าง WP .htaccess เริ่มต้น

    .htaccess ทำงานบน พื้นฐานสำหรับแต่ละไดเรกทอรี ซึ่งหมายความว่าแต่ละไดเรกทอรีสามารถมีไฟล์. htaccess ของตนเองได้ มันสามารถเกิดขึ้นได้ง่าย ๆ ที่ไซต์ WordPress ของคุณ ยังไม่มีไฟล์. htaccess. หากคุณไม่พบไฟล์. htaccess ในไดเรกทอรีรากของคุณ สร้างไฟล์ข้อความที่ว่างเปล่า และตั้งชื่อให้ .htaccess.

    ด้านล่างนี้คุณสามารถค้นหา ค่าเริ่มต้น. htaccess WordPress ใช้ เมื่อใดก็ตามที่คุณต้องการรหัสนี้คุณสามารถค้นหาได้อย่างรวดเร็วใน WordPress Codex โปรดทราบว่ามี. htaccess ที่แตกต่างกันสำหรับ WP Multisite.

     # BEGIN WordPress  RewriteEngine บน RewriteBase / RewriteRule ^ index \ .php $ - [L] RewriteCond% REQUEST_FILENAME! -f RewriteCond% REQUEST_FILENAME! -d RewriteRule /index.php [L]  # END WordPress 

    บรรทัดที่ขึ้นต้นด้วย # มีความคิดเห็น. อย่าแก้ไขอะไรเลย ระหว่างบรรทัด # BEGIN WordPress และ # END WordPress. เพิ่มกฎ. htaccess ที่กำหนดเองของคุณ ด้านล่างกฎเริ่มต้นเหล่านี้.

    ตัวอย่างโค้ดทั้งหมดที่คุณสามารถหาได้ในบทความนี้ ไปที่ไฟล์ core .htaccess พบในไดเรกทอรีรากของคุณ.

    1. ปฏิเสธการเข้าถึงไฟล์. htaccess ทั้งหมด

    รหัสด้านล่าง ปฏิเสธการเข้าถึง ไปยังไฟล์. htaccess ทั้งหมดที่คุณติดตั้งใน WordPress ของคุณ วิธีนี้คุณสามารถป้องกันไม่ให้คนอื่นเห็นคุณ การกำหนดค่าเว็บเซิร์ฟเวอร์.

     # ปฏิเสธการเข้าถึงไฟล์. htaccess ทั้งหมด  คำสั่งอนุญาต, ปฏิเสธปฏิเสธจากทั้งหมดพึงพอใจทั้งหมด  

    2. ปกป้องการกำหนดค่า WP ของคุณ

    WP-config.php ไฟล์มี การกำหนดค่า WP ทั้งหมดของคุณ, รวมถึงการเข้าสู่ระบบฐานข้อมูลและรหัสผ่านของคุณ คุณสามารถปฏิเสธได้จากทุกคนหรือ อนุญาตให้ผู้ดูแลระบบเข้าถึงได้.

    หากคุณเลือกหลัง แสดงความคิดเห็น # อนุญาตจาก xx.xx.xx.xxx บรรทัด (ลบ # จากจุดเริ่มต้นของบรรทัด) และ ใส่ที่อยู่ IP ของผู้ดูแลระบบ ในตำแหน่งของ xx.xx.xx.xxx.

     # ปกป้อง wp-config  คำสั่งอนุญาต, ปฏิเสธ # อนุญาตจาก xx.xx.xx.xxx # อนุญาตจาก yy.yy.yy.yyy ปฏิเสธทั้งหมด  

    3. ป้องกันการโจมตี DDoS ของ XML-RPC

    WordPress รองรับ XML-RPC โดยค่าเริ่มต้นซึ่งเป็น อินเตอร์เฟซที่ทำให้การเผยแพร่ระยะไกล เป็นไปได้ อย่างไรก็ตามในขณะที่มันเป็นคุณสมบัติที่ยอดเยี่ยม แต่ก็เป็นหนึ่งในช่องโหว่ด้านความปลอดภัยที่ใหญ่ที่สุดของ WP อย่างที่แฮ็กเกอร์อาจทำได้ ใช้ประโยชน์จากการโจมตี DDoS.

    หากคุณไม่ต้องการใช้คุณสมบัตินี้จะเป็นการดีกว่า ปิดการใช้งาน. เหมือนเมื่อก่อนคุณทำได้ เพิ่มข้อยกเว้นโดยการแสดงความคิดเห็น # อนุญาตจาก xx.xx.xx.xxx บรรทัดและเพิ่ม IP ของผู้ดูแลระบบของคุณ.

     # ปกป้อง XML-RPC ป้องกันการโจมตี DDoS  คำสั่งปฏิเสธ, อนุญาต # อนุญาตจาก xx.xx.xx.xxx # อนุญาตจาก yy.yy.yy.yyy ปฏิเสธทั้งหมด  

    4. ปกป้องพื้นที่ดูแลระบบของคุณ

    เป็นความคิดที่ดีเช่นกัน ปกป้องพื้นที่ผู้ดูแลระบบ โดยให้สิทธิ์การเข้าถึงแก่ผู้ดูแลระบบเท่านั้น ที่นี่อย่าลืม เพิ่มอย่างน้อยหนึ่ง “อนุญาต” ข้อยกเว้น ไม่เช่นนั้นคุณจะไม่สามารถเข้าถึงผู้ดูแลระบบของคุณได้เลย.

     # ปกป้องพื้นที่ผู้ดูแลระบบโดย IP AuthUserFile / dev / null AuthGroupFile / dev / null AuthName "WordPress การควบคุมการเข้าถึงผู้ดูแลระบบ WordPress" AuthType พื้นฐาน  คำสั่งปฏิเสธ, อนุญาตปฏิเสธจากทั้งหมดอนุญาตจาก xx.xx.xx.xxx อนุญาตจาก yy.yy.yy.yyy  

    5. ป้องกันรายการไดเรกทอรี

    ไซต์ WordPress ส่วนใหญ่ไม่ได้ปิดใช้งานรายการไดเรกทอรีซึ่งหมายความว่าทุกคนสามารถทำได้ เรียกดูโฟลเดอร์และไฟล์ของพวกเขา, รวมถึงการอัปโหลดสื่อและไฟล์ปลั๊กอิน ไม่จำเป็นต้องบอกว่านี่เป็นช่องโหว่ด้านความปลอดภัยขนาดใหญ่.

    ด้านล่างคุณสามารถดูได้ว่า รายการไดเรกทอรี WordPress ทั่วไปดูเหมือนว่า.

    โชคดีที่คุณต้องการ โค้ดหนึ่งบรรทัด เพื่อบล็อกคุณสมบัตินี้ ข้อมูลโค้ดนี้จะ ส่งคืนข้อความแสดงข้อผิดพลาด 403 ถึงทุกคนที่ต้องการเข้าถึงไดเรกทอรีของคุณ.

     # ป้องกันตัวเลือกรายชื่อไดเรกทอรี -Indexes 

    6. ป้องกันการระบุชื่อผู้ใช้

    หากเปิดใช้งานการเชื่อมโยง WP มันเป็นเรื่องง่ายมาก ระบุชื่อผู้ใช้ ใช้คลังข้อมูลผู้แต่ง ชื่อผู้ใช้ที่เปิดเผย (รวมถึงชื่อผู้ใช้ของผู้ดูแลระบบ) นั้นสามารถใช้ได้ใน การโจมตีที่ดุร้าย.

    ใส่รหัสด้านล่างลงในไฟล์. htaccess ของคุณ ป้องกันการระบุชื่อผู้ใช้.

     # ป้องกันการระบุชื่อผู้ใช้ RewriteCond% QUERY_STRING ผู้เขียน = d RewriteRule ^ /? [L, R = 301] 

    7. บล็อกสแปมและบอท

    บางครั้งคุณอาจต้องการ จำกัด การเข้าถึงจากที่อยู่ IP ที่แน่นอน. ข้อมูลโค้ดนี้เป็นวิธีที่ง่ายในการบล็อกผู้ส่งสแปมและบอทที่คุณรู้จัก.

     # บล็อกสแปมเมอร์และบอท  คำสั่งอนุญาต, ปฏิเสธปฏิเสธจาก xx.xx.xx.xxx ปฏิเสธจาก yy.yy.yy.yyy  อนุญาตจากทั้งหมด 

    8. ป้องกันภาพ hotlinking

    แม้ว่าจะไม่ใช่ภัยคุกคามความปลอดภัย, รูปภาพ hotlinking ยังคงเป็นสิ่งที่น่ารำคาญ คนไม่เพียง ใช้ภาพของคุณโดยไม่ได้รับอนุญาต แต่พวกเขาก็ทำตามที่คุณต้องการ ด้วยโค้ดสองสามบรรทัดนี้คุณสามารถป้องกันไซต์ของคุณจากรูปภาพฮอตลิงค์.

     # ป้องกันรูปภาพ hotlinking RewriteEngine บน RewriteCond% HTTP_REFERER! ^ $ RewriteCond% HTTP_REFERER! ^ http (s)?: // (www \.) yourwebsite.com [NC] RewriteCond% HTTP_REFERER! ^ http (s) s)?: // (www \.)? yourwebsite2.com [NC] RewriteRule \. (jpe? g? | png | gif | ico | pdf | flv | swf | gz) $ - [NC, F, L] 

    9. จำกัด การเข้าถึงปลั๊กอิน PHP และธีมโดยตรง

    อาจเป็นอันตรายได้ถ้ามีคน โทรโดยตรงปลั๊กอินและไฟล์ธีมของคุณ, ไม่ว่าจะเกิดขึ้นโดยไม่ตั้งใจหรือโดยผู้โจมตีที่เป็นอันตราย ข้อมูลโค้ดนี้ มาจาก บริษัท รักษาความปลอดภัยเว็บไซต์ Acunetix; คุณสามารถอ่านเพิ่มเติมเกี่ยวกับช่องโหว่นี้ได้ในบล็อกโพสต์.

     # จำกัด การเข้าถึงไฟล์ PHP จากไดเรกทอรีปลั๊กอินและธีม RewriteCond% REQUEST_URI! ^ / wp-content / ปลั๊กอิน / ไฟล์ / ถึง / ไม่รวม \ .php RewriteCond% REQUEST_URI! ^ / wp-content / plugins / directory / / แยก / RewriteRule wp-content / plugins / (. * \. php) $ - [R = 404, L] RewriteCond% REQUEST_URI! ^ / wp-content / ธีม / ไฟล์ / ถึง / ไม่รวม \ .php RewriteCond% REQUEST_URI! ^ / wp-content / themes / directory / ถึง / ไม่รวม / RewriteRule wp-content / themes / (. * \. php) $ - [R = 404, L] 

    10. ตั้งค่าการเปลี่ยนเส้นทางแบบถาวร

    คุณสามารถ จัดการการเปลี่ยนเส้นทางถาวร ด้วย. htaccess ก่อนอื่นคุณต้องเพิ่ม URL เก่า, จากนั้นทำตาม URL ใหม่ ซึ่งจะชี้ไปยังหน้าที่คุณต้องการเปลี่ยนเส้นทางผู้ใช้ไป.

     # การเปลี่ยนเส้นทางแบบถาวรเปลี่ยนเส้นทาง 301 / oldurl1 / http://yoursite.com/newurl1 การเปลี่ยนเส้นทางถาวร 301 / oldurl2 / http://yoursite.com/newurl2 

    11. ส่งผู้เยี่ยมชมไปยังหน้าการบำรุงรักษา

    เราเขียนรายละเอียดเกี่ยวกับเทคนิคนี้ไว้ที่นี่ คุณต้องการ หน้าการบำรุงรักษาแยกต่างหาก (maintenance.html ในตัวอย่าง) สำหรับกฎ. htaccess นี้เพื่อให้ทำงานได้ รหัสนี้ทำให้เว็บไซต์ของคุณ WordPress เข้าสู่โหมดบำรุงรักษา.

     # เปลี่ยนเส้นทางไปยังหน้าการบำรุงรักษา  RewriteEngine บน RewriteCond% REMOTE_ADDR! ^ 123 \ .456 \ .789 \ .000 RewriteCond% REQUEST_URI! /maintenance.html$ [NC] RewriteCond% REQUEST_URI! \ (jpe? g? | png | gng ) [NC] RewriteRule. * /maintenance.html [R = 503, L]  

    12. จำกัด การเข้าถึง WP ทั้งหมดรวมถึง

    / WP-includes / โฟลเดอร์ มีไฟล์ WordPress หลัก ที่จำเป็นสำหรับ CMS ในการทำงาน ไม่มีเนื้อหาปลั๊กอินธีมหรือสิ่งอื่นใดที่ผู้ใช้อาจต้องการเข้าถึงที่นี่ ดังนั้นเพื่อเพิ่มความปลอดภัยให้ดีขึ้น จำกัด การเข้าถึงทั้งหมด.

     # บล็อกโฟลเดอร์และไฟล์ทั้งหมดรวมถึง WP  RewriteEngine บน RewriteBase / RewriteRule ^ wp-admin / ประกอบด้วย / - [F, L] RewriteRule! ^ wp- รวม / - [S = 3] RewriteRule ^ wp- รวม / [^ /] + \. php $ - [F, L] RewriteRule ^ wp- รวม / js / tinymce / langs /.+ \. php - [F, L] RewriteRule ^ wp- รวม / theme-compat / - [F, L]  

    13. บล็อกสคริปต์ข้ามไซต์ (XSS)

    ข้อมูลโค้ดต่อไปนี้มาจาก WP Mix และปกป้องไซต์ของคุณจาก การโจมตี XSS ทั่วไปบางอย่าง, คือการฉีดสคริปต์และพยายามที่จะแก้ไขตัวแปรทั่วโลกและขอ.

     # บล็อกการโจมตี XSS บางรายการ  RewriteCond% QUERY_STRING (\ |% 3E) [NC หรือ OR] RewriteCond% QUERY_STRING GLOBALS (= | \ [| \% [0-9A-Z] 0,2) [หรือ] RewriteCond% QUERY_STRING  _REQUEST (= | \ [| \% [0-9A-Z] 0,2) RewriteRule. * index.php [F, L]  

    14. เปิดใช้งานการแคชเบราว์เซอร์

    ดังที่ฉันได้กล่าวไว้ก่อนหน้านี้. htaccess ไม่เพียง แต่ดีสำหรับเหตุผลด้านความปลอดภัยและการเปลี่ยนเส้นทาง แต่ยังสามารถช่วยคุณได้ จัดการแคช. ข้อมูลโค้ดด้านล่างมาจากชุดรูปแบบที่หรูหราและมัน ทำให้การแคชเบราว์เซอร์เป็นไปได้ โดยทำให้ผู้เข้าชม บันทึกไฟล์บางประเภท, ดังนั้นในครั้งต่อไปที่พวกเขาเยี่ยมชมพวกเขาไม่จำเป็นต้องดาวน์โหลดอีกครั้ง.

     # เปิดใช้งานการแคชเบราว์เซอร์  ExpiresActive On ExpiresByType image / jpg "access 1 ปี" ExpiresByType image / jpeg "access 1 ปี" ExpiresByType image / gif "access 1 ปี" ExpiresByType image / png "access 1 ปี" ExpiresByType image / png "การเข้าถึง 1 ปี" pdf "เข้าถึง 1 เดือน" ExpiresByType ข้อความ / x-javascript "เข้าถึง 1 เดือน" แอปพลิเคชัน ExpiresByType / x-shockwave-flash "เข้าถึง 1 เดือน" รูปภาพ ExpiresByType / x-icon "เข้าถึง 1 ปี" ExpiresDefault "เข้าถึง 2 วัน"  

    15. ตั้งค่าหน้าข้อผิดพลาดที่กำหนดเอง

    คุณสามารถใช้. htaccess เพื่อตั้งค่าหน้าข้อผิดพลาดที่กำหนดเองบนไซต์ WordPress ของคุณ สำหรับวิธีการทำงานนี้คุณต้อง สร้างหน้าข้อผิดพลาดที่กำหนดเอง (ที่กำหนดเอง 403.html, ที่กำหนดเอง 404.html ในตัวอย่าง) และ อัปโหลดพวกเขา ไปยังโฟลเดอร์รูทของคุณ.

    คุณสามารถตั้งค่าหน้าข้อผิดพลาดที่กำหนดเองสำหรับ รหัสสถานะ HTTP ข้อผิดพลาดใด ๆ (รหัสสถานะ 4XX และ 5XX) ที่คุณต้องการ.

     # ตั้งค่าหน้าแสดงข้อผิดพลาดที่กำหนดเอง ErrorDocument 403 /custom-403.html ErrorDocument 404 /custom-404.html