มีการเปลี่ยนเส้นทางมากเกินไป: ข้อผิดพลาดนี้หมายถึงอะไรและจะแก้ไขอย่างไร
เผยแพร่แล้ว: 2022-09-27“การเปลี่ยนเส้นทางมากเกินไป” หรือที่เรียกว่าลูปเปลี่ยนเส้นทางเป็นข้อผิดพลาดที่เบราว์เซอร์จะกลับมาหากหน้าเว็บที่ร้องขอไม่สามารถโหลดได้เนื่องจากมีการเปลี่ยนเส้นทางจำนวนไม่รู้จบที่ต้องติดตามเพื่อดึงเนื้อหาใด ๆ จากเซิร์ฟเวอร์ การวนรอบการเปลี่ยนเส้นทางมักเกิดจากการเปลี่ยนเส้นทางที่ขัดแย้งกันในฝั่งเซิร์ฟเวอร์หรือการกำหนดค่า CDN ผิดพลาด
ในคู่มือที่ครอบคลุมนี้เพื่อแก้ไขข้อผิดพลาด "การเปลี่ยนเส้นทางมากเกินไป" คุณจะได้เรียนรู้ว่าสามารถกำหนดค่าการเปลี่ยนเส้นทางได้ที่ไหน สาเหตุที่พบบ่อยที่สุดที่อยู่เบื้องหลังการวนซ้ำการเปลี่ยนเส้นทางคืออะไร และวิธีจัดการกับปัญหาเหล่านั้นในลักษณะทีละขั้นตอน
การเปลี่ยนเส้นทางคืออะไรและทำงานอย่างไร
การเปลี่ยนเส้นทางเว็บไซต์สามารถกำหนดเป็นขั้นตอนที่ต้องทำในระหว่างการส่งเนื้อหาเพื่อค้นหาตำแหน่งของหน้าเว็บที่ร้องขอ สำหรับคุณ ดูเหมือนว่าการเปลี่ยนแปลงที่เกิดขึ้นจากกฎการเปลี่ยนเส้นทางจะสะท้อนเพียงว่าที่อยู่ของเว็บไซต์แสดงในแถบที่อยู่เว็บอย่างไร เบราว์เซอร์ของคุณจะดำเนินการเบื้องหลังต่างๆ เพื่อกำหนดตำแหน่งที่เปลี่ยนเส้นทางแต่ละครั้งก่อนที่จะโหลด เนื้อหาจากตำแหน่งสุดท้ายที่กำหนดโดยเส้นทางการเปลี่ยนเส้นทาง
การบังคับ HTTPS เว็บไซต์เวอร์ชัน www หรือการโหลดชื่อโดเมนอื่น การเปลี่ยนเส้นทางใช้กันอย่างแพร่หลายในการโฮสต์เว็บไซต์ ช่วยให้คุณปรับแต่งการจัดส่งเนื้อหาได้ มีหลายวิธีในการตั้งค่าการเปลี่ยนเส้นทางโดเมน และตราบใดที่กำหนดค่าอย่างถูกต้อง เบราว์เซอร์จะไม่มีปัญหาใดๆ ตามกฎที่คุณสร้างขึ้น
การเปลี่ยนเส้นทางชั่วคราวและถาวร
การเปลี่ยนเส้นทางมีสองประเภทหลักที่สามารถกำหนดค่าได้ — ชั่วคราวและถาวร เว็บเซิร์ฟเวอร์จะส่งคืนรหัสสถานะ 302 หรือ 301 HTTP ทั้งนี้ขึ้นอยู่กับประเภทของการเปลี่ยนเส้นทาง
รหัสตอบกลับ HTTP 302 แสดงว่าที่อยู่เว็บหนึ่งๆ ถูกเปลี่ยนเส้นทางชั่วคราวไปยังตำแหน่งอื่น อย่างไรก็ตาม ในบางครั้ง คุณจะเห็นว่ามีการติดตามการเปลี่ยนเส้นทางชั่วคราวเมื่อคุณลบกฎการเปลี่ยนเส้นทางถาวรออกจากเว็บไซต์ของคุณ แต่ยังไม่ได้ล้างแคช ซึ่งทำให้ไม่สามารถเห็นการเปลี่ยนแปลงได้
กรณีนี้อาจเกิดขึ้นได้หากคุณใช้โซลูชันแคชทุกประเภท รวมถึงปลั๊กอินแคชของ WordPress ตัวใดตัวหนึ่ง เบราว์เซอร์ของคุณจะจัดเก็บเวอร์ชันแคชของเว็บไซต์ที่คุณเยี่ยมชม ซึ่งรวมถึงการเปลี่ยนเส้นทางแบบเก่า
การเปลี่ยนเส้นทางถาวรจะส่งคืนรหัสสถานะ 301 HTTP และระบุว่าเว็บไซต์ของคุณหรือหน้าบางหน้าในนั้นถูกย้ายอย่างถาวร ซึ่งในกรณีที่เป็นการเปลี่ยนเส้นทางไปยัง HTTPS หรือเว็บไซต์เวอร์ชัน www ไม่ได้หมายความว่าตำแหน่งของเว็บไซต์นั้นอยู่บน ระบบไฟล์มีการเปลี่ยนแปลง
อะไรคือการเปลี่ยนเส้นทางที่พบบ่อยที่สุด?
การเปลี่ยนเส้นทางจากเว็บโปรโตคอล HTTP เป็น HTTPS และจากเว็บที่ไม่ใช่ www ไปยังเวอร์ชัน www เป็นกฎทั่วไปสองข้อที่กำหนดค่าไว้ การเปลี่ยนเส้นทางไปยัง HTTPS ช่วยให้มั่นใจได้ว่าการเข้าชมเว็บทั้งหมดได้รับการเข้ารหัสโดยใช้ใบรับรอง SSL ในขณะที่การเปลี่ยนเส้นทางไปยัง www มักใช้เพื่อรวมเครือข่ายการจัดส่งเนื้อหากับเว็บไซต์ของคุณโดยใช้ระเบียน CNAME
HTTP เป็น HTTPS
สามารถกำหนดค่าการเปลี่ยนเส้นทางจาก HTTP เป็น HTTPS ซึ่งมักเรียกว่าการบังคับ HTTPS เพื่อให้แน่ใจว่าไม่มีการส่งเนื้อหาไปยังผู้เยี่ยมชมเว็บไซต์ผ่านการเชื่อมต่อ HTTP ที่ไม่ปลอดภัย หากมีการติดตั้งใบรับรอง SSL/TLS ที่ถูกต้องบนเว็บไซต์ของคุณ โดยทั่วไปคุณไม่จำเป็นต้องบังคับ HTTPS ด้วยตนเอง แต่การเพิ่มการเปลี่ยนเส้นทางดังกล่าวอาจเป็นวิธีหนึ่งในการจัดการกับเนื้อหาแบบผสม
เนื้อหาผสม
เนื้อหาผสมบนเว็บไซต์สามารถกำหนดเป็นสถานการณ์เมื่อไฟล์ HTML พื้นฐานถูกโหลดผ่าน HTTPS แต่ทรัพยากรอื่นๆ ที่อ้างอิง รวมถึงรูปภาพ ไฟล์ Javascript หรือ CSS จะถูกส่งไปยังผู้เยี่ยมชมผ่าน HTTP แม้ว่าคุณจะติดตั้งใบรับรอง SSL ที่ถูกต้อง เบราว์เซอร์จะยังคงแสดงคำเตือนด้านความปลอดภัยหากมีการระบุเนื้อหาแบบผสมบนหน้าเว็บ
การตั้งค่าการเปลี่ยนเส้นทางเพื่อแก้ไขปัญหาเกี่ยวกับเนื้อหาแบบผสมมักไม่ใช่วิธีแก้ปัญหาที่ดีที่สุด คุณควรได้รับ URL ทั้งหมด (Uniform Resource Locators) ในฐานข้อมูลของเว็บไซต์ของคุณที่อัปเดตเพื่อรวมโปรโตคอล HTTPS แทน HTTP ที่สามารถทำได้ด้วยตนเองโดยใช้คุณสมบัติการค้นหาแทนที่ WP CLI เสนอหรือปลั๊กอิน WordPress สำหรับระบบจัดการเนื้อหาอื่นๆ คุณจะต้องแก้ไขที่อยู่โดยใช้เครื่องมือการดูแลฐานข้อมูล เช่น phpMyAdmin หรือเรียกใช้คำสั่ง MySQL/MariaDB จากบรรทัดคำสั่ง
3 ตำแหน่งหลักที่สามารถกำหนดค่าการเปลี่ยนเส้นทางได้
โดยทั่วไป การเปลี่ยนเส้นทางสามารถกำหนดค่าได้จากหนึ่งในสามตำแหน่งหลัก:
- การกำหนดค่าเว็บเซิร์ฟเวอร์ ไฟล์การกำหนดค่าส่วนกลางที่ใช้โดยเว็บเซิร์ฟเวอร์มีการตั้งค่าที่มักจะใช้กับเว็บไซต์ทั้งหมดที่โฮสต์ ดังนั้นจึงไม่แนะนำให้เพิ่มการเปลี่ยนเส้นทางไปยังหนึ่งในนั้น การใช้ไฟล์การกำหนดค่าภายในเครื่องที่สร้างขึ้นสำหรับแต่ละเว็บไซต์เป็นมาตรฐานสำหรับการตั้งค่าการเปลี่ยนเส้นทางทางฝั่งเซิร์ฟเวอร์
- การกำหนดค่าระบบการจัดการเนื้อหา ระบบจัดการเนื้อหาของคุณเก็บที่อยู่เว็บไซต์ของคุณไว้ในฐานข้อมูลเป็นค่าคงที่ ซึ่งสามารถใช้เพื่อบังคับ HTTPS หรือโหลดเวอร์ชัน www ได้
- การกำหนดค่าเครือข่ายการส่งเนื้อหา CDN ของคุณจะบังคับการเปลี่ยนเส้นทางของตัวเองซึ่งจะกำหนดวิธีการดึงเนื้อหาจากเซิร์ฟเวอร์ต้นทางและส่งไปยังผู้เยี่ยมชมเว็บไซต์
การเปลี่ยนเส้นทางในไฟล์การกำหนดค่าเว็บเซิร์ฟเวอร์
คุณสามารถตั้งค่ากฎการเปลี่ยนเส้นทางภายในหนึ่งในไฟล์การกำหนดค่าที่เว็บเซิร์ฟเวอร์ของคุณจะอ่าน เมื่อใช้ Apache เป็นเว็บเซิร์ฟเวอร์ กฎการเปลี่ยนเส้นทางมักจะถูกตั้งค่าไว้ในไฟล์ .htaccess ในเครื่องของเว็บไซต์ หากใช้ NGINX การเปลี่ยนเส้นทางจะได้รับการกำหนดค่าภายในบล็อกเซิร์ฟเวอร์ NGINX ซึ่งแสดงถึงการกำหนดค่าส่วนกลางของเว็บไซต์ของคุณ
ด้านล่าง คุณจะเห็นการเปลี่ยนเส้นทางสองแบบที่สามารถเพิ่มใน .htaccess ได้ อันหนึ่งบังคับ HTTPS และอีกอันส่งคำขอเว็บทั้งหมดไปยังเว็บไซต์เวอร์ชัน www ต้องปฏิบัติตามกฎไวยากรณ์ที่เข้มงวด มิฉะนั้นคุณอาจเสี่ยงที่จะทำให้เว็บไซต์ของคุณล่มหาก Apache ตรวจพบข้อผิดพลาดทางไวยากรณ์ในไฟล์การกำหนดค่าภายในเครื่องใดไฟล์หนึ่ง
หากคุณใช้ปลั๊กอินเปลี่ยนเส้นทางสำหรับ WordPress พวกเขามักจะเขียนการเปลี่ยนเส้นทางไปยังไฟล์ .htaccess ในเครื่องของคุณด้วย
การเปลี่ยนเส้นทางในการกำหนดค่า WordPress
WordPress และระบบจัดการเนื้อหาอื่นๆ วางที่อยู่ของเว็บไซต์ไว้ในฐานข้อมูล และการตั้งค่าจะถูกโหลดทุกครั้งที่มีการร้องขอเนื้อหา ที่อยู่แสดงถึง URL ซึ่งประกอบด้วยชื่อโดเมนและโปรโตคอลเว็บ ทั้งแบบ HTTP หรือ HTTPS ด้วยการเปลี่ยน URL ในฐานข้อมูล คุณสามารถเปลี่ยนเส้นทางเว็บไซต์ของคุณไปที่ www หรือบังคับ HTTPS หากมีการติดตั้งใบรับรอง SSL/TLS
WordPress ใช้ค่าคงที่ WP_HOME เพื่อระบุการตั้งค่าที่อยู่ WordPress และ WP_SITEURL เป็นที่อยู่ไซต์ ซึ่งจัดเก็บไว้ในตาราง wp_options เป็น URL ไซต์และหน้าแรก การตั้งค่าที่อยู่ WordPress หมายถึงตำแหน่งของการติดตั้ง WordPress ในขณะที่ที่อยู่เว็บไซต์หมายถึง URL ที่คุณต้องพิมพ์ในแถบที่อยู่ของเบราว์เซอร์เพื่อเปิดเว็บไซต์ของคุณ
การเปลี่ยนเส้นทางบังคับโดย CDN
การกำหนดค่าเครือข่ายการส่งเนื้อหาของคุณกำหนดวิธีการดึงหน้าเว็บที่ร้องขอจากเซิร์ฟเวอร์ต้นทางและส่งไปยังผู้เยี่ยมชมเว็บไซต์ของคุณ - ผ่าน HTTP หรือ HTTPS ขั้นตอนที่แน่นอนจะถูกกำหนดโดยโหมดการเข้ารหัสที่เลือก มีสามประเภทการเข้ารหัสหลักที่นำเสนอโดยเครือข่ายการจัดส่งเนื้อหาที่ทันสมัย:
- การเข้ารหัสแบบเต็มหรือแบบ end-to-end การเข้ารหัสแบบ end-to-end ช่วยให้มั่นใจได้ว่ามีการใช้ HTTPS ในทุกขั้นตอนของการส่งเนื้อหา หมายความว่าคำขอเว็บทั้งหมดจากเบราว์เซอร์ไปยัง CDN และจาก CDN ไปยังเซิร์ฟเวอร์ต้นทาง จะถูกส่งผ่าน HTTPS เสมอ การเข้ารหัสแบบ end-to-end ต้องใช้ใบรับรอง SSL สองใบ อันหนึ่งติดตั้งบนเซิร์ฟเวอร์ต้นทาง และอีกอันหนึ่งติดตั้งโดย CDN
- การเข้ารหัสที่ยืดหยุ่นหรือบางส่วน การเข้ารหัสบางส่วนบังคับให้การเชื่อมต่อทั้งหมดจากเบราว์เซอร์ CDN ไปผ่าน HTTPS ในขณะที่ CDN จะเชื่อมต่อกับเซิร์ฟเวอร์ต้นทางผ่าน HTTP อย่างไรก็ตาม เว็บไซต์ของคุณจะยังแสดงว่าปลอดภัยในทุกเบราว์เซอร์
- ไม่มีการเข้ารหัส เมื่อปิดใช้งานการเข้ารหัส การส่งเนื้อหาจะดำเนินการผ่าน HTTP และเบราว์เซอร์ทั้งหมดจะแสดงคำเตือนด้านความปลอดภัยขณะโหลดเว็บไซต์ของคุณ
หาก CDN พยายามเริ่มต้นการเชื่อมต่อผ่าน HTTPS แต่เว็บเซิร์ฟเวอร์ของคุณเปลี่ยนเส้นทางคำขอ HTTPS ไปยัง HTTP จะมีการวนรอบการเปลี่ยนเส้นทาง ซึ่งส่งผลให้เห็นข้อผิดพลาดการเปลี่ยนเส้นทางบนเว็บไซต์ของคุณมากเกินไป
ข้อผิดพลาด "การเปลี่ยนเส้นทางมากเกินไป" หมายถึงอะไร
“การเปลี่ยนเส้นทางมากเกินไป” ซึ่งมักเรียกว่าการวนรอบการเปลี่ยนเส้นทาง เป็นข้อความแสดงข้อผิดพลาดที่บ่งชี้ถึงข้อขัดแย้งที่เกิดขึ้นระหว่างการส่งเนื้อหาที่เกิดจากการเปลี่ยนเส้นทางที่แข่งขันกันสองครั้ง เมื่อมีการระบุการวนรอบการเปลี่ยนเส้นทาง เบราว์เซอร์สมัยใหม่จะส่งคืนข้อผิดพลาดรูปแบบใดรูปแบบหนึ่งต่อไปนี้:
- หน้านี้ไม่ได้เปลี่ยนเส้นทางอย่างถูกต้อง คุณสามารถเห็นข้อความแสดงข้อผิดพลาดนี้ใน Firefox
- หน้าไม่ทำงาน ERR_TOO_MANY_REDIRECTS Google Chrome จะแสดงข้อผิดพลาดนี้เมื่อติดอยู่ในลูปเปลี่ยนเส้นทาง
- Safari ไม่สามารถเปิดเพจได้เนื่องจากมีการเปลี่ยนเส้นทางมากเกินไป ด้วยวิธีนี้ Safari จะแจ้งให้คุณทราบถึงข้อขัดแย้งในการเปลี่ยนเส้นทางที่ต้องแก้ไขก่อนที่จะโหลดเว็บไซต์ได้
ในการแก้ไขข้อผิดพลาดการเปลี่ยนเส้นทางมากเกินไป คุณจะต้องตรวจสอบการเปลี่ยนเส้นทางที่กำหนดค่าใน .htaccess และบังคับโดยระบบการจัดการเนื้อหา และตรวจสอบว่าเครือข่ายการจัดส่งเนื้อหาใช้โหมดการเข้ารหัสใดหากคุณมี
3 การกำหนดค่าผิดพลาดที่พบบ่อยที่สุดที่ทำให้เกิดการวนรอบการเปลี่ยนเส้นทางบนเว็บไซต์ของคุณและวิธีจัดการกับมัน
การเปลี่ยนเส้นทางทั้งหมดเพื่อระบุข้อขัดแย้งไม่ใช่เรื่องง่าย โดยเฉพาะอย่างยิ่งหากมีการเพิ่มบางส่วนในการกำหนดค่าส่วนกลางของเว็บเซิร์ฟเวอร์ ซึ่งทำให้มีการใช้ทั้งเซิร์ฟเวอร์ อย่างไรก็ตาม มีการกำหนดค่าผิดพลาดที่พบได้บ่อยซึ่งนำไปสู่การวนรอบการเปลี่ยนเส้นทางอย่างหลีกเลี่ยงไม่ได้
สาเหตุทั่วไปสามประการที่ทำให้เห็น “การเปลี่ยนเส้นทางมากเกินไป” ในเว็บไซต์ของคุณคือ:
- ไม่มีใบรับรอง SSL/TLS ที่ถูกต้อง การวนรอบการเปลี่ยนเส้นทางอาจเกิดขึ้นได้หากใบรับรอง SSL ของคุณหมดอายุหรือมีปัญหาอื่นๆ แต่เว็บไซต์ของคุณยังคงพยายามบังคับ HTTPS
- การตั้งค่าที่อยู่เว็บไซต์ CMS ไม่ถูกต้อง หากโปรโตคอลที่ระบุในการตั้งค่าที่อยู่เว็บไซต์ที่ใช้โดย WordPress หรือระบบจัดการเนื้อหาอื่นขัดแย้งกับการกำหนดค่าการเปลี่ยนเส้นทางอื่นๆ จะทำให้เกิดข้อผิดพลาดในการเปลี่ยนเส้นทางมากเกินไป
- เลือกโหมดการเข้ารหัส CDN ที่ไม่ถูกต้อง เป็นเรื่องปกติโดยเฉพาะอย่างยิ่งที่จะเห็นการวนรอบการเปลี่ยนเส้นทางเมื่อเปลี่ยนไปใช้การเข้ารหัสแบบเต็มในการกำหนดค่า CDN หากเซิร์ฟเวอร์ต้นทางไม่ตรงตามข้อกำหนดสำหรับการใช้การเข้ารหัสแบบ end-to-end อาจทำให้เกิดปัญหาได้
ไม่มีใบรับรอง SSL/TLS ที่ถูกต้อง
ใบรับรอง SSL/TLS ที่ลงนามโดย CA ที่ถูกต้องซึ่งติดตั้งบนเว็บไซต์ช่วยให้มั่นใจว่าการรับส่งข้อมูลเว็บทั้งหมดได้รับการเข้ารหัสเมื่อส่งจากเซิร์ฟเวอร์ไปยังเบราว์เซอร์ นอกจากนี้ มีแนวโน้มว่า HTTPS จะถูกบังคับในระดับเซิร์ฟเวอร์ ซึ่งทำงานได้อย่างสมบูรณ์จนกว่าใบรับรอง SSL ของคุณจะหมดอายุและไม่ได้รับการต่ออายุโดยอัตโนมัติ สามารถเกิดขึ้นได้จากสาเหตุต่อไปนี้:
- ไม่ได้เปิดใช้งานการต่ออายุใบรับรอง SSL/TLS อัตโนมัติ หาก SSL ไม่ได้รับการต่ออายุโดยอัตโนมัติ คุณจะต้องสั่งซื้อใบรับรองใหม่และติดตั้ง
- การตรวจสอบโดเมน SSL ล้มเหลว มาเข้ารหัสกันเถอะ หรือ Sectigo หนึ่งในผู้ให้บริการ SSL ที่ใช้กันอย่างแพร่หลายที่สุดที่ให้บริการใบรับรองฟรี ใช้ความท้าทายที่แตกต่างกันเพื่อตรวจสอบว่าคุณควบคุมชื่อโดเมนที่ต้องมีการออกใบรับรองใหม่ หากการตรวจสอบโดเมนล้มเหลว ใบรับรองใหม่จะไม่ได้รับการติดตั้งจนกว่าคุณจะแก้ไขปัญหาที่บล็อกคำขอตรวจสอบ
- ใบรับรองหลักหรือใบรับรองระดับกลางตัวใดตัวหนึ่งหมดอายุแล้ว เมื่อมันเกิดขึ้น คุณจะต้องติดตั้งใบรับรองของคุณใหม่เมื่อผู้ให้บริการ SSL จัดการกับปัญหาที่ด้านข้างของพวกเขา
วิธีการที่อยู่
ตรวจสอบว่าเว็บไซต์ของคุณติดตั้งใบรับรองที่ถูกต้องโดยใช้ตัวตรวจสอบ SSL หากหมดอายุหรือตัวตรวจสอบ SSL แสดงปัญหาอื่นๆ ให้ติดตั้งใบรับรองใหม่ หาก Let's Encrypt หรือ Sectigo ออกใบรับรองฟรีไม่ได้ คุณจะต้องตรวจสอบว่าสิ่งใดที่ขัดขวางคำขอตรวจสอบความถูกต้อง
สาเหตุหนึ่งที่ทำให้การตรวจสอบความถูกต้องโดเมน SSL ล้มเหลวคือการมีเครือข่ายการจัดส่งเนื้อหาที่ผสานรวม โดยเฉพาะอย่างยิ่งหากครั้งสุดท้ายที่ Let's Encrypt หรือ Sectigo ออกใบรับรอง คุณยังไม่ได้กำหนดค่าไว้ หากคุณต้องการติดตั้งใบรับรอง SSL ฟรีใหม่ ให้หยุด CDN ชั่วคราว เพื่อให้เว็บไซต์ของคุณชี้ไปที่เซิร์ฟเวอร์โดยตรง โดยส่งคืนที่อยู่ IP หลักแทนที่จะเป็นที่อยู่ IP ที่เป็นของเครือข่ายการส่งเนื้อหา ด้วยวิธีนี้ คุณสามารถต่ออายุใบรับรองบนเซิร์ฟเวอร์ต้นทางเพื่อใช้การเข้ารหัสแบบ end-to-end ต่อไปได้
การตั้งค่าที่อยู่เว็บไซต์ CMS ไม่ถูกต้อง
WordPress และระบบจัดการเนื้อหาอื่น ๆ ทั้งหมดสามารถบังคับให้เปลี่ยนเส้นทางไปยัง HTTPS หรือ www โดยการจัดเก็บที่อยู่เว็บไซต์ของคุณในฐานข้อมูลและโหลดทุกครั้งที่มีการร้องขอเนื้อหา หากการตั้งค่าที่อยู่เว็บไซต์ไม่ถูกต้อง — ใช้โปรโตคอลหรือชื่อโดเมนที่ไม่ถูกต้อง — จะทำให้เกิดปัญหา รวมถึงการเห็นข้อผิดพลาดในการเปลี่ยนเส้นทางมากเกินไป
วิธีการที่อยู่
หากคุณมีใบรับรอง SSL ติดตั้งอยู่ โดยเฉพาะอย่างยิ่งถ้าการเข้ารหัสแบบ end-to-end ทำได้โดยการกำหนดค่า CDN ให้ใช้ HTTPS ทั้งในการตั้งค่าที่อยู่ WordPress และที่อยู่เว็บไซต์ หากคุณมีเว็บไซต์ของคุณถูกเปลี่ยนเส้นทางไปยังเวอร์ชัน www ทั้งผู้เข้าแข่งขัน WP_SITEURL และ WP_HOME จะต้องสะท้อนให้เห็น
เปิดเมนูการตั้งค่าทั่วไปของแดชบอร์ด WordPress และแก้ไขค่าที่กำหนดให้กับที่อยู่ WordPress และที่อยู่เว็บไซต์ที่จำเป็น คลิกที่บันทึกการเปลี่ยนแปลงเพื่อให้ WordPress แก้ไขการตั้งค่าในฐานข้อมูล
เลือกโหมดการเข้ารหัส CDN ผิด
ต้องไม่มีข้อขัดแย้งระหว่างการเปลี่ยนเส้นทางที่กำหนดค่าบนเซิร์ฟเวอร์ต้นทางและโหมดการเข้ารหัสที่ใช้โดย CDN หรือคุณจะเห็นข้อผิดพลาด "การเปลี่ยนเส้นทางมากเกินไป" ที่พยายามโหลดเว็บไซต์ของคุณในเบราว์เซอร์ใดๆ ตรวจสอบให้แน่ใจว่าคุณเลือกโหมดการเข้ารหัสที่ถูกต้องซึ่งเหมาะสมกับความต้องการของเว็บไซต์ของคุณมากขึ้น
เนื่องจากเครือข่ายการจัดส่งเนื้อหาจะเข้ารหัสการรับส่งข้อมูลระหว่างเซิร์ฟเวอร์และเบราว์เซอร์เสมอ เว้นแต่คุณจะปิดการเข้ารหัสทั้งหมด คุณสามารถเลือกไม่ให้ติดตั้ง SSL บนเซิร์ฟเวอร์ต้นทางได้ เลือกการเข้ารหัสบางส่วนและตรวจสอบให้แน่ใจว่าคุณไม่ได้บังคับ HTTPS ในระดับเซิร์ฟเวอร์เพื่อหลีกเลี่ยงปัญหาใดๆ ในการรับคำขอจาก CDN ผ่าน HTTP
หากเลือกการเข้ารหัสแบบ end-to-end ควรติดตั้งใบรับรอง SSL ที่ถูกต้องบนเซิร์ฟเวอร์ต้นทาง เพื่อให้ CDN สามารถเชื่อมต่อผ่าน HTTPS ได้ เว้นแต่คุณจะติดตั้งใบรับรองใหม่ด้วยตนเอง ทุกครั้งที่จำเป็นต้องต่ออายุ SSL ให้หยุด CDN ของคุณชั่วคราวเพื่อหลีกเลี่ยงปัญหาใดๆ กับการตรวจสอบความถูกต้องของโดเมน
วิธีการที่อยู่
ตรวจสอบการตั้งค่าปัจจุบันของคุณและตัดสินใจว่าจะต้องเลือกโหมดการเข้ารหัสใด เปลี่ยนไปใช้การเข้ารหัสประเภทอื่นเพื่อแก้ไขข้อผิดพลาด "การเปลี่ยนเส้นทางมากเกินไป" ในเว็บไซต์ของคุณซึ่งเกิดจากการเปลี่ยนเส้นทางที่ขัดแย้งกันบนเซิร์ฟเวอร์ต้นทางของคุณหรือไม่มี SSL ที่จำเป็นเพื่อรองรับการเข้ารหัสตั้งแต่ต้นทางถึงปลายทาง
วิธีแก้ไข “การเปลี่ยนเส้นทางมากเกินไป” ใน 3 ขั้นตอน
ในขั้นตอนด้านล่าง คุณจะได้เรียนรู้วิธีระบุการเปลี่ยนเส้นทางที่ขัดแย้งกันและแก้ไขการวนรอบการเปลี่ยนเส้นทางบนเว็บไซต์ของคุณอย่างรวดเร็ว
ขั้นตอนที่ 1 ตรวจสอบเส้นทางการเปลี่ยนเส้นทางของเว็บไซต์ของคุณ
แหล่งที่มาหลายแห่งแนะนำให้ล้างแคชของเบราว์เซอร์เป็นขั้นตอนแรกในการแก้ไขปัญหาการวนซ้ำการเปลี่ยนเส้นทาง อย่างไรก็ตาม เช่นเดียวกับข้อผิดพลาดอื่นๆ จะใช้งานได้ก็ต่อเมื่อปัญหาได้รับการแก้ไขแล้วบนเซิร์ฟเวอร์ แต่เบราว์เซอร์ยังคงเก็บเวอร์ชันที่เสียหายของเว็บไซต์ของคุณไว้ในแคช โดยปกติ หลังจากทำการเปลี่ยนแปลงใดๆ ในเว็บไซต์ของคุณแล้ว คุณอาจต้องการล้างแคชเพื่อให้แสดงผล
ขั้นตอนแรกในการแก้ไข “การเปลี่ยนเส้นทางมากเกินไป” คือการติดตามเส้นทางการเปลี่ยนเส้นทางของเว็บไซต์ของคุณเพื่อดูว่าเบราว์เซอร์ติดขัดตรงจุดใด วิธีที่ดีที่สุดในการทำเช่นนี้คือการใช้ตัวตรวจสอบการเปลี่ยนเส้นทางตัวใดตัวหนึ่ง
ตัวตรวจสอบการเปลี่ยนเส้นทางทั้งหมดหรือส่วนใหญ่ใช้ cURL ซึ่งเป็นเครื่องมือบรรทัดคำสั่งที่ยอดเยี่ยมสำหรับการถ่ายโอนข้อมูลโดยใช้โปรโตคอลเครือข่ายต่างๆ เราสามารถใช้เพื่อรับข้อมูลส่วนหัว HTTP ซึ่งจะแสดงให้คุณเห็นว่าเกิดอะไรขึ้นเมื่อคุณพยายามโหลดเว็บไซต์ของคุณ
บันทึกสคริปต์ทุบตีอย่างง่ายต่อไปนี้ลงในไฟล์ชื่อ redirects.sh เมื่อคุณเชื่อมต่อกับเซิร์ฟเวอร์ผ่าน SSH ทำให้สามารถเรียกใช้งานได้โดยเรียกใช้ chmod +x redirects.sh
เรียกใช้สคริปต์โดยส่งต่อไปยังชื่อโดเมนของเว็บไซต์ของคุณ ตัวอย่างเช่น ./redirects.sh wordpress.com
ขั้นตอนที่ 2 ระบุการเปลี่ยนเส้นทางที่ขัดแย้งกัน
ตรวจสอบผลลัพธ์ที่คุณเรียกใช้สคริปต์ด้านบน มันจะบอกคุณว่าการเปลี่ยนเส้นทางประเภทใดทำให้ "การเปลี่ยนเส้นทางมากเกินไป" ปรากฏขึ้นเนื่องจากเบราว์เซอร์เลิกทำตามกฎที่ขัดแย้งกัน ในผลลัพธ์ด้านล่าง เราจะเห็นว่ามีการเปลี่ยนเส้นทางแบบไม่จำกัดจาก HTTP และ HTTPS
สังเกตรหัสสถานะการส่งคืนของการเปลี่ยนเส้นทางแต่ละครั้ง การเปลี่ยนเส้นทางถาวรมักมาจากไฟล์ .htaccess ของเว็บไซต์ ในขณะที่การเปลี่ยนเส้นทางชั่วคราวมักจะสร้างขึ้นภายในโค้ดของเว็บไซต์ ดังนั้น WordPress หรือระบบจัดการเนื้อหาอื่นๆ ที่คุณใช้ควบคุม
ขั้นตอนที่ 3 ระบุที่อยู่ของ Redirect Loop
ขึ้นอยู่กับกฎการเปลี่ยนเส้นทางที่ขัดแย้งกันที่คุณระบุ คุณจะรู้ว่าต้องวนซ้ำที่ใด ตามที่เราคุยกัน มีสามสิ่งสำคัญที่ต้องตรวจสอบ — ไฟล์ .htaccess ในเครื่องของคุณ การตั้งค่าที่อยู่เว็บไซต์ที่จัดเก็บไว้ในฐานข้อมูลของเว็บไซต์ของคุณโดย CMS และโหมดการเข้ารหัสที่เลือกในการกำหนดค่า CDN
หากการวนรอบการเปลี่ยนเส้นทางเกิดขึ้นในขณะที่เว็บไซต์ของคุณพยายามเปลี่ยนเส้นทางระหว่าง HTTP และ HTTPS ให้ตรวจสอบว่าคุณได้ติดตั้งใบรับรอง SSL/TLS ที่ถูกต้องหรือไม่ และเลือกโหมดการเข้ารหัสใดในการกำหนดค่า CDN ของคุณ หากคุณมีการผสานรวมกับเว็บไซต์ของคุณ ตรวจสอบที่อยู่เว็บไซต์และที่อยู่ WordPress ที่ระบุสำหรับเว็บไซต์ของคุณและจัดเก็บไว้ในฐานข้อมูล WordPress
ปฏิบัติตามคำแนะนำในส่วนก่อนหน้าของคู่มือนี้เพื่อแก้ไขปัญหาการกำหนดค่าผิดพลาดทั่วไป และแก้ไข "การเปลี่ยนเส้นทางมากเกินไป" ในเว็บไซต์ของคุณ
บทสรุป
ข้อความแสดงข้อผิดพลาด "การเปลี่ยนเส้นทางมากเกินไป" หรือที่เรียกว่าการวนรอบการเปลี่ยนเส้นทาง ปรากฏบนเว็บไซต์ของคุณเมื่อเบราว์เซอร์ไม่สามารถโหลดเนื้อหาใดๆ ได้เนื่องจากมีการเปลี่ยนเส้นทางจำนวนมากที่ตามมา ในการแก้ไขการวนรอบการเปลี่ยนเส้นทาง คุณต้องแก้ไขข้อขัดแย้งที่มีอยู่ในเส้นทางการเปลี่ยนเส้นทาง
การดำเนินธุรกิจออนไลน์เต็มไปด้วยความท้าทาย และการใช้เวลาหลายชั่วโมงในการตั้งค่าโครงสร้างพื้นฐานของเซิร์ฟเวอร์และการแก้ไขข้อผิดพลาดนั้นไม่สามารถทำได้เสมอไป และไม่ใช่ความคิดที่ดีที่จะมีโซลูชันที่เหมาะสมไม่จำเป็นต้องจ้างทีมเฉพาะเพื่อให้เว็บไซต์ของคุณทำงานต่อไปโดยไม่มีปัญหาใดๆ
การปกป้องเว็บไซต์ WordPress กว่าล้านเว็บไซต์ BackupBuddy และ iThemes Security Pro เป็นโซลูชันชั้นนำของอุตสาหกรรมสำหรับการรักษาความปลอดภัยระดับแอปพลิเคชันและการกู้คืนข้อมูล การตรวจสอบช่องโหว่และการสแกนมัลแวร์เป็นประจำโดยคุณสมบัติ Site Scan ช่วยให้คุณลดพื้นผิวการโจมตีได้อย่างมากและปกป้องเว็บไซต์ของคุณจากช่องโหว่ที่รู้จักทั้งหมด การสำรองข้อมูลอัตโนมัติและการกู้คืนในคลิกเดียวอย่างง่ายดาย — BackupBuddy ทำให้สามารถกู้คืนจากการโจมตีที่เป็นอันตรายและข้อผิดพลาดทั่วไปทั้งหมดได้
ปลั๊กอินความปลอดภัย WordPress ที่ดีที่สุดสำหรับการรักษาความปลอดภัยและปกป้อง WordPress
ปัจจุบัน WordPress มีอำนาจมากกว่า 40% ของเว็บไซต์ทั้งหมด ดังนั้นจึงกลายเป็นเป้าหมายที่ง่ายสำหรับแฮกเกอร์ที่มีเจตนาร้าย ปลั๊กอิน iThemes Security Pro นำการคาดเดาออกจากความปลอดภัยของ WordPress เพื่อให้ง่ายต่อการรักษาความปลอดภัยและปกป้องเว็บไซต์ WordPress ของคุณ เหมือนกับการมีผู้เชี่ยวชาญด้านความปลอดภัยเต็มเวลาที่เจ้าหน้าที่คอยตรวจสอบและปกป้องไซต์ WordPress ของคุณอย่างต่อเนื่อง
Kiki สำเร็จการศึกษาระดับปริญญาตรีด้านการจัดการระบบข้อมูล และประสบการณ์มากกว่าสองปีในด้าน Linux และ WordPress ปัจจุบันเธอทำงานเป็นผู้เชี่ยวชาญด้านความปลอดภัยสำหรับ Liquid Web และ Nexcess ก่อนหน้านั้น Kiki เป็นส่วนหนึ่งของทีมสนับสนุน Liquid Web Managed Hosting ซึ่งเธอได้ช่วยเหลือเจ้าของเว็บไซต์ WordPress หลายร้อยราย และเรียนรู้ว่าพวกเขามักพบปัญหาทางเทคนิคใดบ้าง ความหลงใหลในการเขียนของเธอทำให้เธอได้แบ่งปันความรู้และประสบการณ์เพื่อช่วยเหลือผู้คน นอกเหนือจากเทคโนโลยีแล้ว Kiki ยังสนุกกับการเรียนรู้เกี่ยวกับอวกาศและฟังพอดแคสต์อาชญากรรมที่แท้จริง