ในโลกของ WordPress ปัญหาที่ผู้ใช้งานมักพบเจออยู่บ่อยครั้งคือหน้าจอขาวโพลน หรือที่เรียกว่า “White Screen of Death” (WSOD) ซึ่งเป็นปัญหาที่ทำให้เว็บไซต์แสดงผลไม่ได้และผู้ใช้งานอาจไม่สามารถเข้าถึงหน้า Dashboard ได้เช่นกัน
ปัญหานี้น่ากลัวแค่ไหน?
สำหรับเจ้าของเว็บไซต์ WSOD ไม่ได้เป็นเพียงความน่าหงุดหงิด แต่ยังส่งผลกระทบต่อธุรกิจ เช่น การสูญเสียผู้เข้าชมเว็บไซต์หรือการขายที่ลดลง และสำหรับนักพัฒนา WSOD เป็นหนึ่งในสัญญาณที่บ่งบอกว่าโค้ดหรือการตั้งค่าบางอย่างผิดพลาด
อะไรคือสาเหตุหลักที่ทำให้เกิดปัญหานี้?
WSOD มักเกิดจากการทำงานที่ขัดแย้งกันของ ปลั๊กอิน, ธีม, หรือ ข้อผิดพลาดในโฮสต์ เช่น การตั้งค่า PHP หรือ Memory Limit ที่ไม่เพียงพอ นอกจากนี้ยังอาจเกิดจากการอัปเดตที่ล้มเหลวหรือโค้ดที่ไม่สอดคล้องกัน
ทำไมการเรียนรู้เกี่ยวกับ WSOD (White Screen of Death) ถึงสำคัญ?
การเข้าใจวิธีการระบุสาเหตุและแก้ไขปัญหานี้เป็นสิ่งจำเป็นสำหรับ
- ผู้ใช้งานทั่วไป: เพื่อรักษาการทำงานของเว็บไซต์อย่างต่อเนื่อง
- นักพัฒนา: เพื่อป้องกันปัญหาในอนาคตและพัฒนาเว็บไซต์ที่มีเสถียรภาพมากขึ้น
ในบทความนี้ เราจะเจาะลึกถึง:
- สาเหตุสำคัญของ WSOD
- วิธีการแก้ไขทีละขั้นตอนที่เข้าใจง่าย
- เคล็ดลับในการป้องกันไม่ให้เกิด WSOD ในอนาคต
วิธีการแก้ไข WSOD

เมื่อเว็บไซต์ของคุณเจอปัญหาหน้าจอขาวโพลน (WSOD) สิ่งแรกที่ต้องทำคือลองหาสาเหตุและแก้ไขอย่างมีระเบียบ วิธีการแก้ไขนี้จะช่วยให้คุณสามารถวิเคราะห์ปัญหาได้อย่างง่าย ๆ และกลับมาทำงานได้เร็วขึ้นครับ
1. ปิดปลั๊กอินทั้งหมด (Deactivate All Plugins)
บางครั้งปัญหาของ WSOD อาจเกิดจากปลั๊กอินที่ไม่เข้ากัน หรืออาจจะมีปลั๊กอินบางตัวที่ทำงานผิดพลาด วิธีการแรกที่ควรลองคือ ปิดปลั๊กอินทั้งหมด แล้วดูว่าเว็บไซต์กลับมาใช้งานได้หรือไม่
- ทำยังไง?
- เข้าไปที่โฟลเดอร์ wp-content ผ่านโปรแกรม FTP หรือ File Manager
- เปลี่ยนชื่อโฟลเดอร์ plugins เป็นชื่ออื่น เช่น plugins_disabled
- หลังจากนั้นลองโหลดหน้าเว็บไซต์ใหม่ ถ้าเว็บไซต์กลับมาทำงานได้ แสดงว่าอาจมีปลั๊กอินตัวใดตัวหนึ่งที่ทำให้เกิดปัญหา
- ค่อย ๆ เปิดใช้งานปลั๊กอินทีละตัวจนเจอปลั๊กอินที่ทำให้เกิดปัญหาครับ
2. เปลี่ยนธีมเป็นธีมพื้นฐาน (Switch to Default Theme)
ถ้าปลั๊กอินไม่ใช่สาเหตุ ลองเปลี่ยนธีมที่คุณใช้ไปเป็นธีมพื้นฐาน เช่น Twenty Twenty-One ของ WordPress ก่อน เพราะบางครั้งธีมที่คุณใช้ก็อาจเป็นสาเหตุของปัญหานี้
- ทำยังไง?
- เข้าไปที่โฟลเดอร์ wp-content/themes ผ่าน FTP หรือ File Manager
- เปลี่ยนชื่อโฟลเดอร์ของธีมที่ใช้อยู่ (เช่น my-theme) เป็นชื่ออื่น เช่น my-theme_disabled
- เมื่อเปลี่ยนแล้ว WordPress จะใช้ธีมพื้นฐานแทน และคุณจะเห็นว่าเว็บไซต์กลับมาทำงานหรือไม่
3. เพิ่ม Memory Limit (Increase Memory Limit)
บางครั้ง WSOD อาจเกิดจากเว็บไซต์ใช้หน่วยความจำ (Memory) มากเกินไป โดยเฉพาะถ้าคุณมีปลั๊กอินที่ทำงานหนักหรือเว็บไซต์มีเนื้อหาจำนวนมาก วิธีแก้ไขคือการเพิ่ม Memory Limit ในการตั้งค่า PHP

- ทำยังไง?
- เปิดไฟล์ wp-config.php ที่อยู่ในโฟลเดอร์หลักของเว็บไซต์
- เพิ่มโค้ดนี้ลงไปในไฟล์: define(‘WP_MEMORY_LIMIT’, ‘256M’);
- ทำการอัปเดตไฟล์แล้วลองโหลดหน้าเว็บไซต์ใหม่อีกครั้ง
4. เปิด Debugging Mode เพื่อหาข้อผิดพลาด (Enable Debugging Mode)
ถ้าคุณไม่แน่ใจว่าเกิดปัญหาจากอะไร การเปิดโหมด WP_DEBUG จะช่วยให้คุณเห็นข้อความแสดงข้อผิดพลาด (error message) ที่เกิดขึ้นในเว็บไซต์ ทำให้คุณสามารถระบุปัญหาได้ชัดเจนขึ้น
- ทำยังไง?
- เปิดไฟล์ wp-config.php ในโฟลเดอร์หลักของเว็บไซต์
- เพิ่มโค้ดนี้ลงไปในไฟล์: define(‘WP_DEBUG’, true), define(‘WP_DEBUG_LOG’, true);
- หลังจากนั้นข้อผิดพลาดทั้งหมดจะถูกบันทึกไว้ในไฟล์ wp-content/debug.log ให้คุณเปิดอ่านเพื่อหาสาเหตุ
5. ตรวจสอบการตั้งค่า PHP และอัปเกรด (Check PHP Settings and Upgrade)
การใช้ PHP เวอร์ชันที่ไม่รองรับหรือการตั้งค่า PHP ที่ผิดพลาดก็อาจทำให้เกิด WSOD ได้เช่นกัน ดังนั้นคุณควรตรวจสอบและอัปเกรด PHP ให้เหมาะสมกับเว็บไซต์ของคุณ
- ทำยังไง?
- เข้าสู่ cPanel หรือระบบการจัดการโฮสติ้งของคุณ
- ตรวจสอบ PHP Version และอัปเกรดให้เป็นเวอร์ชันที่รองรับ (แนะนำ PHP 7.4 หรือ 8.0)
- หากคุณไม่แน่ใจว่าจะอัปเกรดอย่างไร ให้ติดต่อผู้ให้บริการโฮสติ้งเพื่อขอความช่วยเหลือ
6. ลบแคชของเบราว์เซอร์ (Clear Browser’s Cache)
บางครั้งการที่คุณเห็นหน้าจอขาว (WSOD) อาจไม่ได้เกิดจากปัญหาที่เว็บไซต์ แต่เกิดจากแคชของเบราว์เซอร์ที่เก็บข้อมูลเก่าไว้ ซึ่งอาจทำให้เบราว์เซอร์โหลดหน้าเว็บไซต์เก่าแทนที่จะโหลดข้อมูลใหม่
- ทำยังไง?
- ถ้าคุณใช้ Google Chrome:
- คลิกที่เมนูสามจุดมุมขวาบน > More Tools > Clear browsing data
- เลือกช่วงเวลาเป็น All time และเลือก Cached images and files
- กด Clear data
- หากคุณใช้เบราว์เซอร์อื่น ๆ เช่น Firefox หรือ Safari ก็จะมีขั้นตอนที่คล้ายกันในการลบแคช
- เมื่อคุณลบแคชแล้วลองรีเฟรชหน้าเว็บไซต์อีกครั้งเพื่อดูผลลัพธ์
- ถ้าคุณใช้ Google Chrome:
7. ตรวจสอบปัญหาการอัปเดตอัตโนมัติที่ล้มเหลว (Check for Failed Auto-Update Issues)
บางครั้ง WordPress หรือปลั๊กอินอาจไม่อัปเดตตัวเองอย่างถูกต้อง ซึ่งสามารถทำให้เกิดปัญหากับการแสดงผลของเว็บไซต์ หรืออาจทำให้เกิดการหยุดทำงานอย่างไม่คาดคิด
- ทำยังไง?
- ตรวจสอบว่า WordPress และปลั๊กอินต่าง ๆ ได้รับการอัปเดตล่าสุดหรือไม่
- หากการอัปเดตไม่ได้เกิดขึ้นตามปกติ คุณสามารถลองอัปเดตด้วยตัวเองผ่านหน้าจัดการของ WordPress โดยไปที่ Dashboard > Updates
- หากคุณพบว่าการอัปเดตไม่สำเร็จ ให้ลองอัปเดต WordPress หรือปลั๊กอินที่มีปัญหาผ่าน FTP โดยการดาวน์โหลดเวอร์ชันล่าสุดจากเว็บไซต์ของผู้พัฒนาและอัปโหลดไฟล์ใหม่ไปยังโฟลเดอร์ที่เหมาะสม
- นอกจากนี้ หากการอัปเดตอัตโนมัติไม่ทำงาน อาจจะต้องตรวจสอบการตั้งค่าเซิร์ฟเวอร์หรือปรึกษาผู้ให้บริการโฮสติ้งเพื่อให้แน่ใจว่าเซิร์ฟเวอร์รองรับการอัปเดตอัตโนมัติ
8. ตรวจสอบไฟล์ .htaccess (Check the .htaccess File)
ไฟล์ .htaccess เป็นไฟล์ที่ควบคุมการตั้งค่าหลาย ๆ อย่างในเว็บไซต์ WordPress รวมถึงการตั้งค่าการเปลี่ยนเส้นทาง (redirects) และการป้องกันการเข้าถึงไฟล์บางประเภท หากไฟล์ .htaccess เสียหายหรือมีข้อผิดพลาดอาจทำให้เกิด WSOD
- ทำยังไง?
- เข้าถึงโฟลเดอร์หลักของเว็บไซต์ผ่าน FTP หรือ File Manager
- ค้นหาไฟล์ .htaccess และทำการสำรองไฟล์นั้นก่อน
- ลบหรือเปลี่ยนชื่อไฟล์ .htaccess
- จากนั้นลองรีเฟรชเว็บไซต์ ถ้าเว็บไซต์กลับมาใช้งานได้ แสดงว่าไฟล์ .htaccess เป็นสาเหตุของปัญหา
- คุณสามารถสร้างไฟล์ .htaccess ใหม่โดยไปที่ Dashboard > Settings > Permalinks แล้วคลิก Save Changes เพื่อให้ WordPress สร้างไฟล์ .htaccess ใหม่โดยอัตโนมัติ

9. ตรวจสอบการตั้งค่าของ PHP (Check PHP Settings)
การตั้งค่าผิดพลาดของ PHP เช่น max_execution_time หรือ max_input_vars อาจทำให้เกิด WSOD โดยเฉพาะเมื่อมีการร้องขอที่มีขนาดใหญ่หรือซับซ้อนเกินไปจากเว็บไซต์
- ทำยังไง?
- ติดต่อผู้ให้บริการโฮสติ้งของคุณเพื่อขอให้เพิ่มค่าพารามิเตอร์ PHP ที่สำคัญ เช่น:
- max_execution_time: ให้ตั้งค่าให้สูงขึ้น (เช่น 300 วินาที)
- memory_limit: เพิ่มค่าหน่วยความจำ (เช่น 256MB หรือมากกว่า)
- max_input_vars: เพิ่มค่าการรับข้อมูลที่มากขึ้น
- หากคุณสามารถเข้าไปที่ php.ini หรือ .htaccess ได้ด้วยตัวเอง คุณสามารถปรับค่าพวกนี้ได้ในไฟล์เหล่านั้น
- ติดต่อผู้ให้บริการโฮสติ้งของคุณเพื่อขอให้เพิ่มค่าพารามิเตอร์ PHP ที่สำคัญ เช่น:
10. ตรวจสอบปัญหาจากเซิร์ฟเวอร์ (Check for Server Issues)
ปัญหาจากเซิร์ฟเวอร์ เช่น เซิร์ฟเวอร์ล่มหรือทรัพยากรไม่เพียงพอ อาจทำให้เว็บไซต์ของคุณแสดงผลเป็น WSOD หากเว็บไซต์ของคุณมีการเข้าชมสูงหรือโหลดหนัก เซิร์ฟเวอร์อาจไม่สามารถรองรับได้
- ทำยังไง?
- ตรวจสอบสถานะของเซิร์ฟเวอร์จากผู้ให้บริการโฮสติ้ง ว่าเซิร์ฟเวอร์ของคุณมีปัญหาหรือไม่ เช่น อาจเกิดการ Overloaded หรือ Out of Resources
- หากเว็บไซต์ของคุณมีทราฟฟิกสูง อาจจำเป็นต้องอัปเกรดแผนโฮสติ้ง หรือพิจารณาใช้บริการ VPS หรือ Dedicated Server ที่ให้ทรัพยากรมากขึ้น
- ติดต่อผู้ให้บริการโฮสติ้งเพื่อสอบถามว่าเซิร์ฟเวอร์ของคุณมีการตั้งค่าหรือข้อผิดพลาดที่ทำให้เกิด WSOD
หรือไม่
การป้องกันปัญหาจาก WSOD ในอนาคต
การป้องกันปัญหานี้ในอนาคตสามารถทำได้โดยการ อัปเดต WordPress, ธีม, และปลั๊กอิน อย่างสม่ำเสมอ, สำรองข้อมูล ก่อนการอัปเดตทุกครั้ง, ใช้ PHP เวอร์ชันล่าสุด ที่รองรับ WordPress, และหลีกเลี่ยงการติดตั้งปลั๊กอินหรือธีมที่ไม่เป็นที่รู้จักหรือไม่ได้รับการอัปเดตบ่อย ๆ นอกจากนี้ยังควรใช้ปลั๊กอินที่สามารถช่วยตรวจสอบการทำงานของเว็บไซต์เพื่อแจ้งเตือนเมื่อเกิดปัญหาที่อาจส่งผลกระทบต่อการทำงานของเว็บไซต์
สรุป
WSOD เป็นปัญหาที่สามารถเกิดขึ้นได้จากหลายสาเหตุ แต่การรู้วิธีการตรวจสอบและแก้ไขอย่างมีขั้นตอน จะช่วยให้คุณสามารถฟื้นฟูเว็บไซต์ได้อย่างรวดเร็วและมีประสิทธิภาพ การดูแลเว็บไซต์ด้วยการอัปเดตสม่ำเสมอและการตั้งค่าระบบที่ เหมาะสม จะช่วยลดโอกาสที่ปัญหานี้จะเกิดขึ้นในอนาคตและทำให้คุณมั่นใจว่าเว็บไซต์ WordPress ของคุณจะทำงานได้อย่างราบรื่นตลอดเวลา
Error ปลั๊กอิน WordPress ที่พบบ่อยพร้อมวิธีแก้ไข
Cover Image: Freepik.com