เพราะโลกอินเทอร์เน็ตนั้นขยับขยายไปมากขึ้นกว่าแต่ก่อน ทำให้ในปัจจุบัน เราอาจต้องยอมรับเลยว่า การเข้าชมเว็บไซต์ต่าง ๆ ถือได้ว่าเป็นอีกหนึ่งกิจกรรมที่มนุษย์ส่วนใหญ่มักทำ ซึ่ง 500 Internal server error นี่ อาจเป็นอีกหนึ่งสิ่งที่หลาย ๆ คนเคยพบเจอ เวลาเข้าชมเว็บไซต์สักที่หนึ่ง แต่หน้าเว็บกลับไม่โหลด และขึ้นข้อความดังกล่าวมาแทน แล้วเจ้า 500 Internal server error เนี่ยมันคืออะไร สรุปแล้วปัญหามันอยู่ที่เราหรือระบบ และจะแก้ไขได้อย่างไร ตาม Hocco มาชมในบทความนี้กันเลย!
500 Internal server error ปัญหาข้อผิดพลาดในหน้าเว็บ ที่เกิดได้กับทุกคน
500 Internal Server Error คืออะไร มันคือปัญหาที่เกิดจากระบบภายในมีปัญหา หรือมีการตั้งค่าที่ผิดพลาด ทำให้เกิดการไม่ตอบสนองต่อการเรียกใช้งานดูเว็บไซต์ของเรา เมื่อมีการแจ้งเตือนลักษณะนี้ จะมีข้อความด้านล่างต่อมาว่า ให้เราทำการติดต่อผู้ดูแลระบบเพื่อทำการแก้ไข
ทำไมถึงได้เกิด 500 Internal server error ขึ้นได้นะ
500 Internal Server Error หรือ เกิดข้อผิดพลาดร้ายแรงบนเว็บไซต์นี้ เกิดได้จากหลากหลายสาเหตุ ยกตัวอย่างเช่น
- ไฟล์ .htaccess มีปัญหา
- ไฟล์ Code Plugin หรือ Theme ไม่สมบูรณ์ หรือติด Bug
- ตัว WordPress มีปัญหา
- เซิร์ฟเวอร์โหลดหนักเกินไป
- PHP Memory Limit ไม่เพียงพอ
ซึ่งปัญหานั้นเกิดขึ้นจาก Theme, Plugin หรือตัว WordPress เองทำงานหนักจน PHP Memory ที่ให้มาไม่เพียงพอต่อการประมวลผล เมื่อเทียบกับบนคอมพิวเตอร์ของเรา เหมือน RAM เต็มและทำงานต่อไปไม่ได้ โดยจะทำงานต่อได้เมื่อโปรแกรมกินแรมน้อยลงนั่นเอง (PHP Memory ไม่เกี่ยวอะไรกับ RAM ของตัว Server ที่ใช้รันเว็บ)
แต่ทีนี้ ตัวระบบเองก็ไม่สามารถบอกได้ว่ามันเกิดขึ้นจากอะไร จึงทำได้แค่ขึ้นข้อความว่า “เกิดข้อผิดพลาดร้ายแรงบนเว็บไซต์นี้ โปรดตรวจสอบคำแนะนำในกล่องข้อความในอีเมลผู้ควบคุมเว็บ” หรือ “There has been a critical error on this website. Please check your site admin email inbox for instructions” แทนนั่นเอง
แล้ว 500 Internal server error จะสามารถแก้ไขได้อย่างไร
กรณีที่ไม่ใช่เจ้าของเว็บไซต์
หากเราไม่ใช่เจ้าของเว็บไซต์ 500 Internal server error นี้ก็เป็นปัญหาที่ส่วนท้ายของตัวเว็บไซต์ ที่ตัวเราเองไม่สามารถแก้ไขได้ด้วยตนเอง แต่เป็นใครก็ตามที่ดูแลเว็บไซต์จะต้องทำการแก้ไขมัน
อย่างไรก็ตาม มันก็มีหลายวิธีในการแก้ไขปัญหา 500 Internal server error ได้อย่างรวดเร็ว ข้อความ 500 Internal server error ที่แสดงข้อผิดพลาดนี้มักเกิดขึ้นชั่วคราว และเว็บไซต์อาจแก้ไขได้อย่างรวดเร็ว ยกตัวอย่างเช่น หลายคนอาจเชื่อมต่อกับเว็บไซต์ในครั้งเดียวจึงทำให้เกิดปัญหาขึ้น ซึ่งเราอาจต้องรอสักครู่ หรือสองถึงสามวินาทีก่อนที่จะลองโหลดหน้าเว็บซ้ำอีกครั้ง โดยคลิกปุ่ม "โหลดซ้ำ" บนแถบเครื่องมือของเบราว์เซอร์ หรือกด F5 แทน ตัวเบราว์เซอร์ของเราก็จะติดต่อกับเว็บเซิร์ฟเวอร์ และขอหน้าอีกครั้ง โดยอาจจะทำให้เว็บไซต์ทำงานได้อย่างถูกต้อง ซึ่งนี่ก็จะช่วยแก้ไขปัญหา 500 Internal server error ได้
กรณีที่เป็นเจ้าของเว็บไซต์หรือผู้ดูแล
กลับกัน หากเป็นในกรณีที่เราเป็นเจ้าของเว็บไซต์หรือผู้ดูแลระบบ 500 Internal server error จะมีวิธีการแก้ไขอยู่ 5 วิธี ซึ่งจะเป็นการไล่ตรวจเช็คไปเรื่อย ๆ แต่หากทำถึงวิธีใดแล้ว ข้อผิดพลาด 500 Internal Error Server หายไป ก็ไม่จำเป็นจะต้องทำวิธีอื่น ๆ ซึ่งจะมีวิธีการดังนี้
1. ให้เราทำการตรวจสอบเมนูโมดูลของ Apache ที่อยู่ใน WAMP Server ของเรา โดยไปที่ Apache > Apache Modules หาโมดูลที่ชื่อ Headers Module และ Rewrite Module ว่ามีการเปิดใช้งานหรือไม่ หากไม่มีเครื่องหมายถูกหน้าโมดูลนั้น ๆ ให้เราทำการเปิดใช้งาน แล้วให้ทำการ Restart ตัว WAMP ของเราใหม่อีกครั้ง เพียงเท่านี้ก็จะสามารถเข้าสู่หน้าเว็บไซต์ได้แล้ว
2. เปิดใช้งานโมดูลเช่นเดียวกัน เพียงแต่ว่า เราจะต้องเข้าไปทำการแก้ไขในไฟล์ที่ชื่อว่า httpd.conf แทน ภายในจะมี Code ที่เกี่ยวข้องกับ Rewrite Module และ Headers Module อยู่ ให้เราทำการค้นหาบรรทัดดังกล่าว โดยเปิดโปรแกรม Editor ที่เรามี เช่น Notepad, Sublime Text 3 หรือ Visual Studio Code แล้วทำการค้นหา (Find) วิธีการแก้ไขคือ เราจะต้องทำการลบเครื่องหมาย # ออกจากหน้าบรรทัดนั้น ๆ เพื่อทำการเปิดใช้งานโมดูลทั้ง 2 ตัวนั่นเอง
3. ในกรณีที่ปัญหา 500 Internal Error Server นั้น เกิดขึ้นเฉพาะบางหน้าที่เราไม่สามารถเข้าได้ ให้เราทำการตรวจสอบสิทธิการเข้าใช้งานไฟล์ (File Permission) ในไฟล์ที่เราเข้าไม่ถึงนั้น และให้เปลี่ยนสิทธิการเข้าถึง (File Permission) เป็นการอ่านและเขียน (Read/Write) แทน
4. หากเรายังแก้ปัญหาไม่ได้ ให้เราเปิดไปดูในโฟลเดอร์ของ WAMP เราอาจจะพบไฟล์ .htaccess อยู่ในตำแหน่งที่ไม่ควรจะอยู่ คือ อยู่นอกโปรเจคงานของเรา เช่น อยู่ในโฟลเดอร์ C://wamp64/www/.htaccess ซึ่งผิด มันควรจะอยู่ในโฟลเดอร์ C://wamp64/www/project/.htaccess แบบนี้มากกว่า ให้เราทำการลบไฟล์ที่ผิดออก ก็จะทำให้สามารถใช้งานได้แล้ว
5. สำหรับใครที่ใช้เว็บโฮสติ้งทั่วไป สามารถแจ้งทางผู้ให้บริการเว็บโฮสติ้งให้เพิ่ม PHP Memory Limit ให้ได้ แต่จะเพิ่มได้เท่าไหร่นั้น ก็ขึ้นกับนโยบายของผู้ให้บริการเว็บโฮสติ้งของเรา บางเจ้าให้มาค่าเริ่มต้นเพียง 64MB ซึ่งบางทีไม่พอต่อการใช้งาน แต่ก็สามารถขอให้เพิ่มให้เป็น 128MB, 256MB, 512MB ซึ่งเท่านี้ ก็จะช่วยแก้ไข 500 Internal server error ลงไปได้ แต่หากใครมี Server เป็นของตัวเอง หรือเช่า VPS เราก็ต้องเพิ่มด้วยตนเอง โดยแก้ไฟล์ php.ini แล้วแก้จำนวน Limit เอา
วิธีป้องกันไม่ให้ 500 Internal server error เกิดขึ้นอีก
ปกติแล้ว ปัญหา 500 Internal server error นี้เป็นแล้วมักจะไม่ค่อยเป็นอีก ยกเว้นมีการแก้ไขไฟล์ Theme หรือ Plugin หลังจัดการปิดหรือแก้ไข Theme, Plugin, สคริปต์ WordPress, PHP Memory Limit ที่เป็นปัญหาแล้ว แต่หากเป็น 500 Internal server error อีกครั้ง ก็ให้ลองอ่านไฟล์ Log ดูว่าเป็นเพราะอะไร ซึ่งอาจเกิดจาก Plugin หรือ Theme ที่ใช้มีปัญหาจากทางทีมพัฒนา หรือ Code ที่รันอยู่อาจทำงานไม่ถูกต้องก็ได้เช่นกัน
สรุป
500 Internal Server Error คืออะไร มันก็คือความผิดพลาดที่เกิดขึ้นจากเว็บไซต์ที่เลือกเข้าชม ไม่ใช่ปัญหากับเบราว์เซอร์คอมพิวเตอร์ หรือการเชื่อมต่ออินเทอร์เน็ตของเรา ซึ่งเราไม่อาจแก้ไขได้ด้วยตัวเอง เนื่องจากเป็นปัญหาทางเทคนิคที่ผู้ดูแลเว็บไซต์จะต้องแก้ไขด้วยตัวเอง และหากเราไม่ใช่ผู้ดูแลเว็บไซต์ ก็สามารถแก้เบื้องต้นได้ด้วยการโหลดหน้าเว็บไซต์เดิมซ้ำ ๆ ซึ่งตัวเบราว์เซอร์ของจะพยายามติดต่อกับเว็บเซิร์ฟเวอร์ และขอตัวหน้าเว็บไซต์อีกครั้งซึ่งอาจแก้ปัญหาให้หน้าเว็บกลับมาเป็นปกตินั่นเอง
และแน่นอนว่า หากเราไม่มีผู้เชี่ยวชาญในแง่ของดิจิทัลโซลูชั่นหรือซอฟต์แวร์ต่าง ๆ แล้วล่ะก็ Hocco คือบริษัทพัฒนาซอฟต์แวร์ที่ให้บริการพัฒนาซอฟต์แวร์และดิจิทัลโซลูชั่น ที่พร้อมสรรสร้าง และปรับเปลี่ยนสิ่งต่าง ๆ ของระบบเพื่อรองรับความต้องการของธุรกิจของคุณ ด้วยประสบการณ์การทำงานทั้งหมดที่เรามีในธุรกิจหลากหลายประเภท พร้อมกับทีมนักพัฒนาซอฟต์แวร์ที่มีฝีมือของเรา
อ้างอิง
https://themevilles.com/500-internal-server-error/
https://make2web.com/fix-wordpress/500-internal-server-error/
https://th.phhsnews.com/articles/howto/what-is-a-500-internal-server-error-and-how-do-i-fix-it.html
https://www.thefastcode.com/th-thb/article/what-is-a-500-internal-server-error-and-how-do-i-fix-it
0 Comment