จะบังคับ HTTPS โดยใช้ .htaccess ได้อย่างไร

เผยแพร่แล้ว: 2022-01-04

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

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


จะบังคับ HTTPS โดยใช้ .htaccess ได้อย่างไร

ลองแบ่งคำตอบนี้ออกเป็นสี่ส่วน วิธีนี้จะช่วยให้คุณพบวิธีที่ดีที่สุดสำหรับความต้องการเฉพาะของคุณ

บังคับ HTTPS สำหรับการรับส่งข้อมูลทุกประเภท

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

  • หากต้องการแก้ไขไฟล์ .htaccess ของแผงโฮสต์ ให้ค้นหาตัวจัดการไฟล์ในเว็บไซต์ของคุณแล้วเปิดขึ้นใน public_html
  • ค้นหา RewriteEngine On แล้วเพิ่ม RewriteEngine On RewriteCond %{HTTPS} จาก RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
  • อย่าลืมบันทึก

เป็นสิ่งสำคัญที่คุณต้องแน่ใจว่าบรรทัด: RewriteEngine On ไม่ซ้ำสองครั้ง หากมีอยู่แล้วให้คัดลอกอย่างอื่นโดยไม่มีส่วนนี้ เผื่อมีข้อผิดพลาด!

การบังคับ HTTPS บนโดเมนรอง

การเปลี่ยนเส้นทางโดเมนที่สองของคุณไปยัง HTTPS นั้นง่ายดายด้วยโค้ดชิ้นเดียวนี้:

RewriteEngine บน RewriteCond %{HTTP_HOST} ^yourdomain2.com [NC] RewriteCond %{HTTPS} ปิด RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

ในโค้ดข้างต้น ให้แทนที่ “yourdomain2.com” เป็นชื่อจริงของโดเมนเสมอ นี่เป็นเพียงตัวอย่าง

การใช้โค้ดข้างต้นจะช่วยให้มั่นใจได้ว่าการเข้าชมใดๆ ที่เข้าสู่ yourdomain.com จะถูกเปลี่ยนเส้นทางไปยังเวอร์ชันที่ปลอดภัยของเว็บไซต์ของคุณ ซึ่งระบุโดย 's' ใน URL

การบังคับ HTTPS บนโฟลเดอร์

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

RewriteEngine เมื่อ RewriteCond %{HTTPS} ปิด RewriteRule ^(folder1|folder2|folder3) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

ล้างแคชของเบราว์เซอร์และดูว่าคุณสามารถเชื่อมต่อกับไซต์ของเราผ่าน HTTP ได้หรือไม่ ถ้าทำได้ ยินดีด้วย! ตอนนี้คุณสามารถเข้าถึงเวอร์ชัน HTTPS ที่ปลอดภัยของหน้านี้ได้แล้ว

การบังคับ HTTPS บน WordPress

คุณสามารถป้อน HTTP URL โดยตรงบนไซต์ WordPress ของคุณได้ แม้ว่าคุณจะมีใบรับรอง SSL ก็ตาม หากต้องการบังคับให้สิ่งนี้เกิดขึ้น ให้แก้ไขไฟล์ WordPress .htaccess ของคุณด้วยโค้ดต่อไปนี้:

  • RewriteEngine บน
  • RewriteCond %{HTTPS} !=on
  • RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301,NE]
  • Header ตั้งค่า Content-Security-Policy "upgrade-insecure-requests" เสมอ

การทำเช่นนี้จะบังคับให้ WordPress โหลดหน้าเว็บผ่านการเชื่อมต่อที่ปลอดภัยเท่านั้น แม้ว่าผู้ใช้จะพิมพ์ URL ที่ไม่ปลอดภัยก็ตาม


HTTPS คืออะไร?

HTTPS เป็นมาตรฐานความปลอดภัยที่ปกป้องข้อมูลที่ละเอียดอ่อนขณะเดินทางจากคอมพิวเตอร์ของคุณไปยังเซิร์ฟเวอร์ ย่อมาจาก HyperText Transfer Protocol Secure และใช้เพื่อปกป้องข้อมูล เช่น รหัสผ่านหรือหมายเลขบัตรเครดิต

มันเข้ารหัสข้อมูลทั้งหมดที่ส่งระหว่างคอมพิวเตอร์ของคุณและเว็บไซต์โดยใช้การเข้ารหัส SSL/TLS ทำให้แฮกเกอร์อ่านข้อมูลที่ส่ง เช่น รหัสผ่าน หมายเลขโทรศัพท์ ฯลฯ ได้ยาก เนื่องจากไม่สามารถทำลายรหัสได้


การแก้ไขปัญหา

บางครั้งสิ่งต่าง ๆ ไม่เป็นไปตามแผน เพื่อให้แน่ใจว่าการเปลี่ยนแปลงของคุณถูกต้อง ให้ลองล้างแคชของเบราว์เซอร์ของคุณ หากคุณยังไม่สามารถบังคับ HTTPS ได้ ให้พิจารณาสิ่งต่อไปนี้:

คลาวด์แฟลร์

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

WordPress

WordPress มักเป็นสาเหตุของปัญหานี้ เนื่องจากต้องการให้ URL ของคุณมี 'www' หรือไม่ พูดคุยกับโฮสต์ของคุณเพื่อให้แน่ใจว่าเว็บไซต์ของคุณใช้รูปแบบที่ถูกต้อง


ทำไม HTTPS ถึงมีความสำคัญ?

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

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

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

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


บทสรุป

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

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

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

เราหวังว่าบทความนี้จะช่วยให้คุณเข้าใจวิธีบังคับให้เว็บไซต์ของคุณใช้การเชื่อมต่อที่ปลอดภัย หากคุณมีคำถามหรือข้อกังวลใด ๆ โปรดอย่าลังเลที่จะติดต่อเรา! เรายินดีที่จะช่วยเหลือ