10 วิธีแก้ WordPress เข้า wp admin ไม่ได้ หน้าขาว ไม่แสดงผล

Wordpress เข้า wp admin ไม่ได้ 5 วิธีแก้ไขปัญหา

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

ในบทความนี้ รามาทำความเข้าใจปัญหา WordPress login ไม่ได้ เกิดจากสาเหตุอะไรได้บ้าง ผมจะพยายามเรียบเรียงจากปัญหาง่ายๆ ไปจนถึงปัญหาที่แก้ยากขึ้น และจะพยายามแทรกคำแนะนำจากประสบการณ์ตรงของผม

Tips

ปัญหาเข้า wp admin ไม่ได้ ผมขอไม่รวมกรณี ลืม Username Password เพราะเป็นปัญหาพื้นฐานที่แก้ไขได้ไม่ยาก ผมได้แยกบทความ ลืมรหัสผ่าน WordPress ไว้แล้วครับ ตามกันไปอ่านได้เลยคร้าบ

1. ถูกล็อค ip ด้วย ปลั๊กอิน Security

ถูกล็อค ip ด้วย ปลั๊กอิน Security
ถูกล็อค ip ด้วย ปลั๊กอิน Security

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

วิธีการปลดล็อค มี 2 วิธีด้วยกัน

  • รอ จนกว่าจะเกินระยะเวลาที่กำหนด เพราะปกติแล้วเราจะกำหนดเวลาที่บล็อค เช่น 60 นาที
  • หากรอไม่ไหว ต้องการเข้าระบบหลังบ้านเร่งด่วน ก็มีวิธีที่ทำได้ทันที โดยการปิดปลั๊กอิน

วิธีการปิด Plugin ปกติแล้วเราสามารถไปที่หลังบ้าน WordPress แล้วปิดได้เลย แต่กรณีนี้เราเข้าไม่ได้ ทำให้ต้องปิดผ่าน FTP Hosting แทน หรือ สามารถเข้าผ่านระบบ Panel ของโฮสติ้งอย่าง Direct Admin, Plesk, cPanel เป็นต้น

สมมติว่าผมใช้ปลั๊กอิน Security ชื่อ Limit Login Attempts Reloaded ผมต้องการปิดปลั๊กอินตัวนี้

เข้าไปที่ Folder /wp-content/plugins แล้วหา Plugin ที่ชื่อ limit-login-attempts-reloaded แล้วเปลี่ยนชื่อเป็นดังนี้ limit-login-attempts-reloaded-old *จริงๆ เปลี่ยนเป็นอะไรก็ได้

เปลี่ยนชื่อเป็นดังนี้ limit-login-attempts-reloaded-old *จริงๆ เปลี่ยนเป็นอะไรก็ได้
เปลี่ยนชื่อเป็นดังนี้ limit-login-attempts-reloaded-old *จริงๆ เปลี่ยนเป็นอะไรก็ได้

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

2. URL เข้าหลังบ้านไม่เหมือนเดิม

อย่างที่ทราบกันว่า วิธีการเข้าระบบ WordPress คือ โดเมนเนม + /wp-admin แต่เราไปตั้งค่า Security โดยการเปลี่ยน url จาก wp-admin เป็นอย่างอื่น หมายความว่า เราจะเข้าด้วย wp-admin ไม่ได้อีกต่อไป ซึ่งมันหนึ่งในการตั้งค่าความปลอดภัยของเว็บไซต์ WordPress ที่ควรทำ แต่บางครั้งถ้าไม่ได้เข้าหลังบ้านไปนาน อาจจะลืมได้

วิธีการแก้เบื้องต้น คือ ลองสอบถามคนทำเว็บ หรือคนที่ดูแลระบบหลังบ้านของ WordPress ครับ หากหาไม่เจอจริงๆ

ต้องใช้วิธีเดียวกับข้อที่ 1 ครับ คือ ต้องไปแก้ชื่อ Plugin ที่เราใช้ตั้งค่า ซึ่งมันก็คือ ปลั๊กอิน Security นั้นแหละครับ ส่วนตัวผมชอบใช้ All-In-One Security (AIOS) ในการครั้งค่าเปลี่ยน URL เข้าหลังบ้าน

3. จอขาว หรือ 500 Internal Server Error

หน้าตาปัญหา 500 Internal Server Error ใน WordPress
หน้าตา 500 Internal Server Error

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

  • อาการจอขาว : คือ เข้ามาแล้ว เจอหน้าขาวๆ ล้วนๆ ไม่มีข้อความใดๆ เลย
  • และอาการ error 500 : มีข้อความว่า 500 Internal Server Error

500 Internal Server Error เป็นปัญหาที่สามารถเกิดขึ้นได้กับทุกเว็บไซต์ ซึ่งโดยปกติแล้วมักจะขึ้นเกิดจาก

  • ไฟล์ .htaccess เสียหาย
  •  ไฟล์ WordPress Core เสียหาย
  •  Plugin บางตัว มีปัญหา
  • Theme มีปัญหา
  • ปัญหาเรื่อง Memory limit ของ Hosting

ก่อนที่จะไปเช็คทีละข้อ เราต้องเปิด Debug Mode ก่อนครับ เพื่อให้ระบบชี้เป้าจุดที่เป็นปัญหา และหลังจากที่แก้ไขปัญหาเสร็จแล้วควรมาปิดเหมือนเดิมครับ

เปิดโหมด Debug ใน WordPress

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

วิธีการเปิดโหมด Debug ของ WordPress

เปิดแก้ไขไฟล์ที่ชื่อ wp-config.php ขึ้นมา ให้ค้นหาบรรทัดที่มีชุดโค้ด ดังนี้

define( "WP_DEBUG", false);

เราแค่แก้จาก false เป็น true > บันทึกไฟล์ > ลองรีโหลดหน้าเว็บไซต์ดูครับ เราน่าจะเห็นผลของ error ว่า มีปัญหาที่ path ไหนของเว็บไซต์

เปิดโหมด Debug
เปิดโหมด Debug

หลังจากที่เราได้เปิดระบบ Debug mode ถ้าลองรีเฟรซดู ระบบอาจจะแสดงจุดที่มีปัญหา เช่น ตำแหน่งไฟล์ที่เสียหาย ว่าเป็นที่ Core, Plugin หรือ Theme หรือ ปัญหาที่ Memory

Allowed Memory Size Exhausted.
Allowed Memory Size Exhausted.

ปัญหาเข้า wp admin ไม่ได้ ผมขอไม่รวมกรณี ลืม Username Password เพราะเป็นปัญหาพื้นฐานที่แก้ไขได้ไม่ยาก ผมได้แยกบทความ ลืมรหัสผ่าน WordPress ไว้แล้วครับ ตามกันไปอ่านได้เลยคร้าบ

4.ปัญหาเรื่อง Memory limit ของ Hosting

Allowed Memory Size Exhausted.
Allowed Memory Size Exhausted.

ถ้าเห็นมีข้อความ Error แจ้งเตือน “Allowed Memory Size Exhausted.” หมายความว่า Memory ที่ทางโฮสติ้งกำหนดค่ามาไม่พอกับการใช้งานจริง ตอนติดตั้ง WordPress แรกๆ คงไม่มีปัญหา แต่ผ่านไปสักระยะนึง เราติดตั้งปลั๊กอินเพิ่มขึ้น ลงข้อมูลมากขึ้น ก็มีผลทำให้ Memory ไม่พอ

วิธีการแก้ปัญหาเพื่อเพิ่ม Memory

วิธีแก้ Memory Limit ใน WordPress แก้ได้ด้วยหลายวิธีการครับ แก้ผ่าน wp-config.php, htaccess และ php.ini ซึ่งทั้ง 3 วิธีการ ต้องแก้ผ่าน FTP Hosting ครับ

แก้ผ่าน wp-config.php

วิธีแก้คือ เราต้องเข้าผ่าน FTP เพื่อแก้ไขไฟล์ที่ชื่อ wp-config.php ไฟล์นี้เป็น Core ของ WordPress ตั้งอยู่ root ด้านนอกสุดครับ และแทรกโค้ดนี้เข้าไปครับ

define( 'WP_MEMORY_LIMIT', '512M' );

Code ข้างบนหมายถึงว่า เพิ่ม Limit เป็น 512MB แล้วลองกดบันทึก รันดูครับว่าข้อความแจ้งเตือนหายไปหรือไม่

แก้ผ่าน .htaccess

ไฟล์ .htaccess ตั้งอยู่ด้านนอกสุดเหมือนกับ wp-config.php โค้ดจะต่างกันเล็กน้อยตามด้านล่างครับ

php_value memory_limit 256M

แก้ผ่าน php.ini

define( 'WP_MEMORY_LIMIT', '512M' );

เบื้องต้นก็น่าจะแก้ปัญหาได้ แต่…

ต้องเข้าใจก่อนว่า สมมติ ค่าตั้งต้นหรือ Default โฮสติ้งเค้าตั้งสัก 128M และตั้ง Maximum สูงสุดที่ 256 หมายความว่า ถ้าตั้งเกิน 256 ไปแล้วก็ยังแก้ปัญหาไม่ได้ แสดงว่ามันเกิน Limit ที่โฮสติ้งตั้งแล้วนั้นเองครับ

5. ไฟล์ .htaccess เสียหาย

ไฟล์ .htaccess ใน WordPres ใช้สำหรับการกำหนดรูปแบบ URL Permalinks กำหนดค่าต่างๆ การเปลี่ยนเส้นทาง ความปลอดภัย ตั้งค่าแคช เป็นต้น ไฟล์ .htaccess ถูกสร้างอัตโนมัต ตอนติดตั้ง WordPress ใหม่ๆ

.htaccess หากไฟล์นี้ถูกลบไป สังเกตได้เวลาเข้าหน้าเว็บ คลิกหน้าต่างๆ จะเป็น 404 เหมือนหน้านั้นถูกลบไป แต่จริงๆ แล้ว รูปแบบ Url ไม่ทำงาน เพราะไฟล์ .htaccess หายไป

แต่ถ้าไฟล์ .htaccess ผิดพลาด มี Code แปลกปลอมแทรกเข้าไป เวลาเข้า wp-admin หลังบ้าน จะแจ้งเตือน 500 Internal Server Error ทันที

วิธีแก้ปัญหาคือ

  • โหลดไฟล์ .htaccess เก็บไว้ก่อน
  • Edit เปิดไฟล์ .htaccess ลบ Code เดิมทั้งหมด แล้ววาง Code ชุดใหม่ไปแทนที่ครับ
# BEGIN WordPress
RewriteEngine On
RewriteRule .\* - \[E=HTTP\_AUTHORIZATION:%{HTTP:Authorization}\]
RewriteBase /
RewriteRule ^index\\.php$ - \[L\]
RewriteCond %{REQUEST\_FILENAME} !-f
RewriteCond %{REQUEST\_FILENAME} !-d
RewriteRule . /index.php \[L\]
# END WordPress

6. Plugin/Theme มีปัญหา

บางครั้ง Plugin บางตัวอาจจะมีปัญหา ไม่ได้อัพเดตมานาน ทำให้ตีกันกับ WordPress ตัวล่าสุด หรือตีกันกับ PHP ล่าสุด ถึงแม้เปิดโหมด Debug ไปแล้ว ก็ยังไม่แน่ใจว่าปัญหามาจากปลั๊กอินตัวไหนกันแน่ หรือ ธีม วิธีการแรกคือ เราต้องปิด Plugin ทุกตัว และ Theme แล้วลองรันเว็บดูว่า เข้าได้หรือไม่ ถ้าเข้าได้ แสดงว่า มาจากปลั๊กอินบางตัวจริงๆ

วิธีการถัดมาคือ ทยอยเปิดปลั๊กอินทีละตัว แล้วรันเว็บไปเรื่อยๆ ถ้า Plugin ตัวไหน Active แล้วเข้าไม่ได้ ก็แสดงว่าเป็นที่ตัวนั้นๆ แน่นอน

วิธีการปิด Plugin ทั้งหมดผ่าน FTP Hosting

วิธีการปิด Plugin ทั้งหมดผ่าน FTP Hosting
วิธีการปิด Plugin ทั้งหมดผ่าน FTP Hosting

Login เข้าโฮสติ้งผ่าน FTP ครับ แล้วเข้าไปที่โฟลเดอร์ wp-content > plugins แก้ไขชื่อโฟลเดอร์ plugins เป็นชื่ออื่นชั่วคราว

จากนั้นลองรีเฟรซดูหน้าเว็บอีกครั้งนึง ถ้าเข้าได้ปกติ แสดงว่าต้องมาจาก Plugin ตัวใดตัวนึงแน่ๆ จากนั้นไป rename เปลี่ยนชื่อ plugins ให้เป็นเหมือนเดิมครับ

แล้วไปที่หน้าหลังบ้านของ WordPress ไปที่ Plugin แล้วทยอยเปิดทีละตัว แล้วรีเฟรซ ถ้าเปิดตัวไหนแล้วพัง แสดงว่า เป็นปัญหาจากปลั๊กอินตัวนั้นครับ

สำหรับ Plugin ที่เป็นตัวปัญหา วิธีแก้คือ

  • ถ้าเป็นปลั๊กอินตัวฟรี ให้ไป Download Plugin มาใหม่
  • ถ้าเป็นปลั๊กอินตัวฟรี แต่มันไม่ได้พัฒนามาหลายปีแล้ว อย่าพยายามใช้ครับ ให้ไปใช้ตัวอื่นแทน *ส่วนตัวถ้าไม่อัพเดตมานานเกิน 2 ปี ผมจะไม่ใช้แล้ว
  • ถ้าเป็นตัว Premium ให้ไปโหลดจากแหล่งที่ซื้อครับ

7. ปัญหาเรื่อง Permission ของ Hosting

ปัญหาเรื่อง Permission ของ Hosting
ปัญหาเรื่อง Permission ของ Hosting

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

Permissions คือ การตั้งค่าสิทธิ์การเข้าถึงไฟล์ของเว็บไซต์ ซึ่งจะมี Read Write และ Execute เป็นการกำหนดว่า ใครสามารถ อ่าน เขียน และแก้ไข ไฟล์/โฟลเดอร์ หากตั้งค่าไม่ถูกต้องตามที่ WordPress กำหนดไว้ ก็จะเข้าเว็บไม่ได้ Permission

ค่า Permission ที่ WordPress แนะนำ เพื่อความปลอดภัย

ค่า Permission ที่ WordPress แนะนำ
ค่า Permission ที่ WordPress แนะนำ
  • 0755 : สำหรับ Folder
  • 0644 : สำหรับ ไฟล์ต่างๆ

กรณีเจอปัญหาเรื่อง Permission ผมแนะนำให้ติดต่อ Support ของ Hosting ให้เค้าช่วยแก้ให้ดีกว่าครับ

8. ไฟล์ WordPress Core เสียหาย

ไฟล์ WordPress Core เสียหาย
ไฟล์ WordPress Core เสียหาย

หากลองทำตามวิธีอื่นๆ ด้านบนแล้ว ไม่ได้ผลเลย เป็นไปได้ว่า ไฟล์ WordPress Core อาจเสียหาย ให้เพื่อนๆ ไปโหลดไฟล์ WordPress ตัวใหม่ล่าสุด

  • ไปที่เว็บไซต์ WordPress.org คลิก Download
  • แตกไฟล์ zip
  • ไปที่โปรแกรม File Zilla เชื่อมต่อ FTP Hosting
  • ไฟล์ WordPress ตัวเก่าให้ยัดใส่ Folder ชั่วคราวก่อนก็ได้ครับ เช่น @OLD
  • แล้วอัพไฟล์ WordPress ที่พึ่งโหลดมาล่าสุด *เลือกทั้งหมดยกเว้น wp-content
ไฟล์ WordPress Core
ไฟล์ WordPress Core
  • ไฟล์ wp-config-sample.php ให้แก้ชื่อเป็น wp-config.php
  • แล้วไป Copy DB_NAME, DB_USER, DB_PASSWORD จากไฟล์ตัวเก่า *ข้อนี้ถ้าใส่พลาดไป เว็บจะเชื่อมต่อฐานข้อมูลไม่ได้ครับ
รหัสการเชื่อมต่อ Database WordPress
รหัสการเชื่อมต่อ Database WordPress

แล้วลองเข้าเว็บดูอีกรอบครับ

9. Database ล่ม “Error Establishing Database Connection”

 Database ล่ม "Error Establishing Database Connection"
Database ล่ม “Error Establishing Database Connection”

กรณีสุดท้าย เว็บไม่สามารถเชื่อมต่อ Database Host ได้ อาจจะเป็นเพราะ Database Host ล่มก็ได้ครับ ถ้าเจอข้อความ Error ลักษณะนี้ แนะนำให้ติดต่อผู้ให้บริการที่เราเช่าอยู่ครับ

10. ติดต่อผู้ใช้บริการ Hosting

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

สรุปปิดท้าย

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

หรือ หากไม่กล้าแก้ไขเอง หรืออยากปรึกษาเพิ่มเติม ทักไลน์ผมมาปรึกษาได้ครับ ยินดีให้คำปรึกษาครับ หรือถ้าสนใจอยากจ้างแก้ไข WordPress ให้เลยก็ไม่ติดครับ ^^