Skip to content

ใครเคยเข้าเว็บแล้วพบข้อความแสดงข้อความ ERROR 403 Forbidden หรือ HTTP ERROR 403 บ้างไหมจ๊ะ? โดยเฉพาะอย่างยิ่งเมื่อข้อผิดพลาดเหล่านี้ปรากฏบนเว็บไซต์ WordPress ของเราเอง บทความนี้จะอธิบายว่า ERROR 403 คืออะไร และต้องทำอย่างไรหากคุณพบข้อผิดพลาดดังกล่าวครับ

ERROR 403 คืออะไร

ERROR403 หรือ Forbidden Error เป็นข้อความแสดงสถานะ HTTP ที่เกิดขึ้นเมื่อไคลเอนต์ เช่น เว็บเบราว์เซอร์พยายามเข้าถึงทรัพยากรบนเว็บเซิร์ฟเวอร์ แต่ถูกปฏิเสธการเข้าถึง

สาเหตุของ ERROR 403

มีหลายสาเหตุด้วยกัน เดี๋ยวเราไล่ดูกันนะครับ

1. ผู้ใช้ไม่มีสิทธิ์ในการเข้าถึงทรัพยากร

สาเหตุที่พบบ่อยที่สุดของ ERROR 403 คือเรื่อง “Permissions” เลยครับ ผู้ใช้ไม่มีสิทธิ์ในการเข้าถึงทรัพยากรที่ร้องขอ สิทธิ์การเข้าถึงสามารถกำหนดได้ตามบทบาทผู้ใช้ กลุ่มผู้ใช้ หรือ IP addressเช่น เว็บไซต์อาจจำกัดการเข้าถึงบางหน้าเว็บสำหรับสมาชิกที่ชำระเงินเท่านั้น

วิธีการแก้ไข

เริ่มแก้ไขปัญหาโดยใช้ตัวจัดการ FTP ในการเข้าถึงไฟล์เพื่อดูการอนุญาตไฟล์ของคุณ เราอาจจะจัดการไฟล์ผ่าน cPanel ของโฮสต์หรือปลั๊กอินตัวจัดการไฟล์ WordPress ก็ได้ครับ

เริ่มจากดูโฟลเดอร์ public_html ตามค่า Permissions ปกติควรจะเป็นตัวเลข 755 หรือ 750 ครับ ทุกไดเร็กทอรี WordPress ควรมีการตั้งค่าเริ่มต้นเป็น 755 หรือ 750 ถ้าเป็นไฟล์ส่วนบุคคลควรเป็น 644 หรือ 640 ยกเว้นไฟล์ wp-config.php ซึ่งจำเป็นต้องตั้งค่าเป็น 444

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

ตัวอย่างความหมายของตัวเลขนะครับ

755 หมายความว่าผู้ใช้ทุกคนสามารถดำเนินการ เข้าถึง เปิด และอ่านไฟล์บนเว็บได้ แต่เจ้าของเป็นเพียงคนเดียวที่สามารถเขียนถึงพวกเขาได้

644 หมายความว่าผู้ใช้ทุกคนสามารถอ่านไฟล์ของคุณได้ แต่มีเพียงเจ้าของเท่านั้นที่สามารถแก้ไขหรือเขียนไฟล์ได้

การใช้ค่าตัวเลขที่ไม่ถูกต้องอาจทำให้เว็บเสี่ยงต่อการโจมตีที่เป็นอันตราย เนื่องจากอาจเปิดการเข้าถึงให้กับบุคคลที่สามโดยไม่ได้ตั้งใจ

วิธีแก้ค่า Permission

ถ้าใช้โปรแกรมพวก FTP อย่าง FileZilla เราสามารถคลิกขวาเลือก File permissions ได้

โดยเราสามารถกำหนดตัวเลขเช่น 755 ลงไปได้เลย เลือกเป็น Apply to directories only

ไฟล์อย่าง wp-config.php ควรกำหนดค่าเป็น 444 คือทุกคนอ่านได้อย่างเดียว และมีความปลอดภัยมากขึ้น

หลังจากแก้ไข Permissions แล้ว ลองทดสอบหน้าเว็บว่า Error 403 หายหรือไม่

2. ตรวจสอบไฟล์ .htaccess

ไฟล์ .htaccess ที่เสียหายอาจทำให้เว็บแสดงข้อผิดพลาด 403 Forbidden ให้เราเข้า FTP เหมือนเดิม ไปที่ Root โฟลเดอร์ของ WordPress จะเจอไฟล์ .htaccess ให้เราดาวโหลดลงมา ให้แบ็คอัพไฟล์ไว้อีกชุดเผื่อผิดพลาดจะได้นำตัวที่แบ็คอัพไว้ก่อนหน้ามาใช้แทนไ้ด้ครับ

หลังจากแบ็คอัพไฟล์ .htaccess ในคอมของเราแล้ว ให้ลบไฟล์ .htaccess บน FTP ทิ้ง แล้วลองเช็คหน้าเว็บว่าอาการ Error 430 หายไหมนะครับ ถ้าไม่หายแสดงว่าไม่ได้เกิดจากไฟล์ .htaccess เสียหาย ก็ให้เราอัพโหลดไฟล์ .htaccess ที่เราได้แบ็คอัพไว้เมื่อสักครู่ขึ้นไปใหม่ แต่ถ้าลบไฟล์ .htaccess แล้วอาการ Error 403 หาย แสดงว่าเกิดจากไฟล์ .htaccess มีปัญหาแล้วล่ะครับ

ให้เราสร้างไฟล์ .htaccess ขึ้นมาใหม่โดยให้ระบบ WordPress เจนเนอเรทขึ้นใหม่ครับ โดยการไปที่เมนู Settings > Permalinks

สกรอลเพจลงมาด้านล่างสุดกดปุ่ม Save ระบบจะทำการ Generate ไฟล์ .htaccess ที่เราลบไปขึ้นใหม่ ซึ่งถ้าไม่มีอะไรผิดพลาด เว็บก็ควรกลับมาใช้ได้ตามปกติครับ

3. ไล่ปิดการทำงานของปลั๊กอิน

วิธีนี้การไล่ Deactivate ปลั๊กอินทีละตัวเพื่อเช็คปัญหาครับ การ Deactivate โดยผ่านโปรแกรม FTP จะทำได้ไวกว่า เพียงแค่เราเข้าไปเปลี่ยนชื่อโฟลเดอร์ปลั๊กอินเป็นชื่ออื่น แล้วลองเช็คหน้าเว็บดูว่าหาย ERROR 403 หรือไม่ บางทีอาจจะมาจากปลั๊กอินประเภทรักษาความปลอดภัยให้กับระบบ ยังไงลองตรวจสอบกันดูนะครับ

4. ลองเช็คพวกการป้องกัน Hotlink Protection

Hotlink Protectionจะเป็นการป้องกันไม่ให้เว็บอื่นๆ นำเอาลิงก์ในเว็บไซต์ของเราไปใช้งาน เช่น รูปภาพ ถ้าไม่ป้องกันก็เท่ากับคนอื่นใช้แบนวิธจากเว็บของเราแทน ซึ่งหากเป็นกรณีนี้ถ้าโฮสต์ที่เราใช้บริการกำหนดค่าไม่ถูกต้องก็อาจจะเกิด Error 403 ได้เช่นกัน ให้เราตรวจสอบให้กับผู้ให้บริการโฮสต์ดูครับ

5. ตรวจสอบ CDN

หากเรามีการใช้งาน CDN ให้ลองเช็คการตั้งค่าที่อาจจะซ้ำซ้อนกันดูครับ อาจจะเทสโดยการปิดการทำงานของ CDN ชั่วคราว แล้วลองเช็คหน้าเว็บดู ถ้าอาการ Error 403 หายก็แสดงว่าเกิดจาก CDN ครับ

สรุป

ERROR 403 เป็นข้อผิดพลาดที่พบบ่อย มีหลายสาเหตุและวิธีแก้ไข ตรวจสอบ URL สิทธิ์การเข้าถึง แคช คุกกี้ และการตั้งค่าคอนฟิกเซิร์ฟเวอร์ ลองไล่แก้ตามวิธีด้านบน ถ้ายังไม่ได้ให้ติดต่อผู้ดูแลระบบเว็บไซต์ดูนะครับ

Back To Top
Search