วิธีแก้ WordPress แสดงข้อความ Too Many Redirects

หากเบราว์เซอร์แสดงข้อความ “Too Many Redirects” หรือ “ERR_TOO_MANY_REDIRECTS” หมายความว่าการเปลี่ยนเส้นทางของเว็บไซต์วนซ้ำจนเบราว์เซอร์หยุดโหลดหน้า ปัญหามักเกิดจากคุกกี้เก่า การตั้งค่า HTTP และ HTTPS ไม่ตรงกัน หรือมีกฎ Redirect ซ้ำใน WordPress ปลั๊กอิน โฮสติ้ง หรือ CDN

ข้อความนี้อาจเกิดกับทุกหน้า หรือเกิดเฉพาะ URL บางรายการ ก่อนแก้ไขให้จด URL ที่พบและตรวจว่าปัญหาเริ่มหลังเปลี่ยนการตั้งค่าใด ComSiam แนะนำให้เริ่มจากตรวจในเบราว์เซอร์ก่อน เพราะเป็นวิธีที่ไม่กระทบการตั้งค่าเว็บไซต์

❶ ล้างคุกกี้ของเว็บไซต์และลองเปิดใหม่

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

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

❷ ตรวจว่าเว็บไซต์ใช้โดเมนและ HTTPS แบบเดียวกัน

ตรวจที่อยู่เว็บไซต์ว่าใช้โดเมนหลักแบบใด เช่น มี www หรือไม่มี และใช้ HTTPS หรือไม่ การตั้งค่า WordPress โฮสติ้ง และ CDN ควรส่งผู้เข้าชมไปยังรูปแบบหลักเดียวกัน

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

❸ ตรวจปลั๊กอินที่ตั้งค่าเปลี่ยนเส้นทาง

ปลั๊กอิน Redirect, SSL, แคช หรือความปลอดภัย อาจสร้างกฎเปลี่ยนเส้นทางที่ขัดกัน หากข้อความเริ่มแสดงหลังติดตั้งหรือเปลี่ยนการตั้งค่าปลั๊กอิน ให้ตรวจรายการที่เพิ่มล่าสุดก่อน

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

❹ ตรวจสอบกฎในโฮสติ้งและ CDN

กฎเปลี่ยนเส้นทางอาจอยู่ทั้งใน WordPress แผงควบคุมโฮสติ้ง และ CDN ตัวอย่างเช่น โฮสติ้งบังคับใช้ HTTPS ขณะที่ CDN ส่งคำขอกลับไปยัง HTTP ทำให้ระบบเปลี่ยนเส้นทางวนไปมา

ตรวจการเปลี่ยนแปลงล่าสุดในแต่ละระบบ และปรับให้ใช้รูปแบบเดียวกัน หากไม่แน่ใจว่าควรตั้งค่าอย่างไร ให้สอบถามผู้ให้บริการก่อนเปลี่ยนค่า SSL หรือปิด CDN

❺ ตรวจสอบไฟล์ .htaccess หากมีการแก้ไข

หากข้อความเริ่มเกิดหลังแก้ไฟล์ .htaccess ให้สำรองไฟล์ปัจจุบันก่อน แล้วขอให้โฮสติ้งตรวจว่ามีกฎซ้ำกับปลั๊กอินหรือการตั้งค่าของเซิร์ฟเวอร์หรือไม่

หากเข้าแอดมินได้ อาจบันทึกการตั้งค่าลิงก์ถาวรใหม่เพื่อให้ WordPress สร้างกฎลิงก์อีกครั้ง แต่ควรเก็บสำเนาไฟล์เดิมไว้ และไม่ลบกฎที่ไม่ทราบหน้าที่

❻ ทดสอบ URL หลังปรับแต่ละจุด

หลังปรับการตั้งค่า ให้เปิด URL ที่เคยแสดงข้อความ Too Many Redirects ในหน้าต่างไม่ระบุตัวตน ตรวจทั้งหน้าแรก หน้าแอดมิน และหน้าที่มีปัญหา หากข้อความยังปรากฏ ให้ตรวจว่ามีกฎเปลี่ยนเส้นทางในระบบอื่นที่ยังทำงานอยู่หรือไม่

ComSiam แนะนำให้บันทึกค่าก่อนเปลี่ยนและแก้ทีละระบบ เพื่อให้ทราบว่าการปรับจุดใดทำให้เว็บไซต์กลับมาเปิดได้ และสามารถย้อนค่ากลับได้หากเกิดปัญหาเพิ่ม

❼ ติดต่อโฮสติ้งหากยังพบข้อความเดิม

หากล้างคุกกี้และตรวจปลั๊กอินกับการตั้งค่าแล้วแต่ยังพบข้อผิดพลาด ให้ส่ง URL ที่มีปัญหา เวลาที่พบ และรายละเอียดการเปลี่ยนแปลงล่าสุดให้โฮสติ้งตรวจสอบ

ขอให้ตรวจว่าการเปลี่ยนเส้นทางระหว่าง HTTP กับ HTTPS หรือระหว่างโดเมนแบบมีและไม่มี www วนซ้ำอยู่หรือไม่ หากใช้ CDN ให้แจ้งชื่อบริการและการตั้งค่า SSL ที่เลือกไว้ด้วย

สรุป

ข้อความ Too Many Redirects เกิดเมื่อเบราว์เซอร์ได้รับคำสั่งเปลี่ยนเส้นทางวนซ้ำ ให้ลองล้างคุกกี้ก่อน แล้วตรวจรูปแบบโดเมนและ HTTPS ปลั๊กอิน Redirect กฎของโฮสติ้ง CDN และไฟล์ .htaccess ตามลำดับ หากยังแก้ไม่ได้ ให้ส่ง URL และรายละเอียดการตั้งค่าแก่โฮสติ้ง ComSiam แนะนำให้เปลี่ยนทีละจุดและทดสอบหน้าเดิมทุกครั้ง