วิธีแก้ WordPress ขึ้น 404 Not Found

ข้อผิดพลาด “404 Not Found” หมายถึงเว็บไซต์ไม่พบหน้าที่ร้องขอ ใน WordPress อาจเกิดกับหน้าเดียว หลายบทความ หรือทุกหน้าที่ไม่ใช่หน้าแรก สาเหตุที่พบบ่อย ได้แก่ ลิงก์ถาวรผิดพลาด เปลี่ยน URL หรือ slug แล้วไม่ได้ตั้งทางเปลี่ยนเส้นทาง บทความยังไม่เผยแพร่ หรือเซิร์ฟเวอร์ไม่ประมวลผลกฎลิงก์ของ WordPress

เริ่มจากตรวจว่า URL นั้นถูกต้องและเนื้อหายังมีอยู่หรือไม่ จากนั้นค่อยตรวจการตั้งค่าลิงก์ถาวร ComSiam แนะนำให้สำรองข้อมูลก่อนแก้ไฟล์ตั้งค่าหรือปรับกฎของเซิร์ฟเวอร์

❶ ตรวจสอบ URL และสถานะของเนื้อหา

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

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

❷ บันทึกการตั้งค่าลิงก์ถาวรใหม่

หากหลายหน้าขึ้น 404 แต่หน้าแรกยังเปิดได้ ให้ลองบันทึกการตั้งค่าลิงก์ถาวรใหม่:

  1. เข้าเมนู การตั้งค่า → ลิงก์ถาวร
  2. ตรวจรูปแบบลิงก์ที่เว็บไซต์ใช้อยู่
  3. กดบันทึกการเปลี่ยนแปลง แม้ไม่ได้เปลี่ยนรูปแบบ
  4. เปิด URL ที่เคยขึ้น 404 อีกครั้ง

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

❸ ตรวจสอบว่ามีการเปลี่ยน slug หรือ URL หรือไม่

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

เมื่อต้องเปลี่ยน URL ของเนื้อหาที่เผยแพร่แล้ว ควรตั้งการเปลี่ยนเส้นทางจาก URL เก่าไป URL ใหม่ และตรวจไม่ให้เกิดการเปลี่ยนเส้นทางวนซ้ำ หากมีปลั๊กอินจัดการ Redirect ให้ตรวจว่ากฎเดิมไม่ขัดกัน

❹ ล้างแคชของเว็บไซต์และเบราว์เซอร์

แคชอาจเก็บผลลัพธ์ 404 เดิมไว้ แม้แก้ URL หรือกฎลิงก์แล้ว ให้ล้างแคชจากปลั๊กอินแคช ระบบแคชของโฮสติ้ง หรือ CDN ที่ใช้งาน จากนั้นเปิดหน้าต่างไม่ระบุตัวตนและทดสอบ URL อีกครั้ง

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

❺ ตรวจสอบกฎของเว็บเซิร์ฟเวอร์

หากบันทึกลิงก์ถาวรใหม่แล้วยังเกิด 404 โดยเฉพาะกรณีที่หน้าแรกเปิดได้แต่หน้าบทความเปิดไม่ได้ อาจมีปัญหาที่กฎการเขียน URL ของเว็บเซิร์ฟเวอร์ เช่น การตั้งค่า Apache หรือ Nginx

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

❻ ตรวจสอบปลั๊กอินที่เกี่ยวกับ URL หรือ Redirect

ปลั๊กอินแคช ปลั๊กอิน Redirect ปลั๊กอินความปลอดภัย หรือปลั๊กอินที่สร้างเนื้อหาประเภทพิเศษ อาจส่งผลต่อ URL ได้ หาก 404 เริ่มเกิดหลังติดตั้งหรืออัปเดตปลั๊กอิน ให้ปิดปลั๊กอินที่เกี่ยวข้องชั่วคราวและทดสอบอีกครั้ง

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

❼ ตรวจสอบเว็บไซต์หลังแก้ไข

หลังแก้ปัญหา ให้ทดสอบหน้าแรก หน้าบทความ หน้าเพจ และหมวดหมู่ที่สำคัญ ตรวจว่าลิงก์ภายใน เมนู และการเปลี่ยนเส้นทางจาก URL เดิมทำงานถูกต้อง

ComSiam แนะนำให้เก็บรายการ URL ที่เคยพบ 404 ไว้ แล้วตรวจซ้ำหลังล้างแคชหรือปรับกฎเซิร์ฟเวอร์ หากยังมีบาง URL ใช้งานไม่ได้ ให้บันทึก URL และเวลาที่ทดสอบเพื่อให้โฮสติ้งตรวจสอบ Log ได้ง่ายขึ้น

สรุป

เมื่อ WordPress ขึ้น 404 Not Found ให้ตรวจ URL และสถานะเนื้อหา บันทึกลิงก์ถาวรใหม่ ล้างแคช และตรวจว่ามีการเปลี่ยน slug หรือไม่ หากยังไม่หาย อาจต้องตรวจปลั๊กอิน Redirect หรือกฎเว็บเซิร์ฟเวอร์ สำรองไฟล์ก่อนแก้การตั้งค่า และขอให้โฮสติ้งตรวจสอบเมื่อไม่แน่ใจ ComSiam แนะนำให้ทดสอบทั้ง URL ใหม่และลิงก์เดิมหลังแก้ปัญหา