HTTP Status Codes

How To Troubleshoot Common HTTP Status Codes
     ทุกๆ ครั้ง ที่เราเข้าใช้งานเว็บไซท์ต่างๆ นั้น Server ของเว็บไซท์ที่เราเรียกใช้งาน จะมีการส่ง HTTP Status Code กลับมาให้ยังบราวเซอร์ของเรา เพื่อบอกถึงสถานะการทำงานของเว็บไซท์ ซึ่งหลายๆอย่าง เราจะเห็น Error อย่างเช่น 404 หรือ 500 บทความนี้ เราจะมาอธิบายความหมายของมันกันว่า รหัสเหล่านี้ คืออะไร?


HTTP Status Code จะแบ่งออกเป็นทั้งหมด 5 กลุ่ม ดังนี้

  • 1xx: Informational
  • 2xx: Success
  • 3xx: Redirection
  • 4xx: Client Error
  • 5xx: Server Error5xx: Server Error

     ในกลุ่ม 1xx ถึง 3xx นั้น เราแทบจะไม่ได้เห็น HTTP Status เหล่านี้เลย เพราะมันเป็นการส่งสถานะที่บ่งบอกถึงการทำงานปรกติ ทำให้จะไม่มีการแสดงสถานะเหล่านี้ออกมาให้เราเห็นนั้นเอง แต่สถานะที่เราจะเห็นบ้างเป็นบางครั้ง นั้นคือสถานะ 4xx ละ 5xx ที่จะบ่งบอกถึงความผิดปรกติที่เกิดขึ้นนั้นเอง


ความผิดปรกติของสถานะ 4xx Client Error
     ในกลุ่มสถานะนี้ จะเป็นการแสดงสถานะผิดปรกติ จากฝังผู้ใช้งาน เช่น เรียกข้อมูลผิดพลาด ส่งข้อมูลไม่ถูกต้อง ไม่มีสิทธิ์เข้าถึง นั้นเอง โดยจะมีความหมายตามรหัสดังนี้

  • 400 Bad Request
    เป็นการส่งข้อมูลจากผู้ใช้ ไปยัง Server แบบไม่ถูกต้อง ผิดหลักไวยากรณ์ที่ Server กำหนดไว้ ก็จะทำให้เกิด Error 400 มาให้เราเห็น
  • 401 Unauthorized
    เป็นการเข้ารหัสของ Server ถ้าผู้ใช้งานใส่รหัสไว้ไม่ถูกต้อง ก็จะเกิด Error 401 ให้เราเห็น แต่ทั้งนี้เป็นการเข้ารหัสด้วยไฟล์ .htpasswd ที่จะสร้างโดยผู้ดูแล Server จะไม่ใช้การแสดงรหัสผิดพลาดของการ Login เข้าระบบปรกติ ทำให้ไม่ใช่ทุกครั้ง ที่เรากรอก user และ password ผิด จะแสดงสถานะนี้ให้เราเห็นนั้นเอง
  • 403 Forbidden
    เป็นการแสดงสถานะสิทธิ์การเข้าถึงไฟล์หรือโฟลเดอร์นั้นๆ ซึ่งผู้ดูแล Server จะกำหนดสิทธิ์ไม่ให้มีการเข้าถึงได้จากผู้ใช้ปรกติ ถ้ามีการกำหนดสิทธิ์ไว้ จะแสดงสถานะ Error 403 แสดงขึ้นมา
  • 404 Not Found
    เป็นการแสดงถึงการ "ไม่มีอยู่" อยู่ไฟล์ หรือ โฟลเดอร์ ที่เราเรียกใช้ผ่าน URL นั้นเอง


ความผิดปรกติของสถานะ 5xx Internal Server Error
     เป็นการแสดงสถานะผิดปรกติจากฝั่ง Server ที่กำลังทำงานผิดพลาด ไม่ใช่ความผิดพลาดของผู้เรียกใช้งานแต่อย่างใด โดยจะมีความหมายตามรหัสดังนี้

  • 500 Internal Server Error
    เป็นการแสดงสถานะความผิดปรกติของ Server ที่ทำงานอยู่ หมายถึง Server ดังกล่าว ไม่สามารถทำงาน หรือประมวลผลได้ โดยส่วนใหญ่ จะเกิดปัญหาจาก Error ของ Coding ที่ทางโปรแกรมเมอร์ได้ทำผิดพลาด ทำให้เกิดสถานะนี้ให้เราเห็นได้
  • 502 Bad Gateway
    เป็นการแสดงสถานะความผิดปรกติของ Gateway ที่เป็นเส้นทางเชื่อมต่อระหว่างผู้ใช้และ Server การแสดงสถานะนี้ จึงหมายความถึงความผิดปรกติของเส้นทางการเรียกใช้งานนั้นเอง
  • 503 Service Unavailable
    สถานะความไม่พร้อมใช้งานของ Server เป็นสถานะที่แสดงถึงการทำงานของ Server ที่กำลังทำการปรับปรุง หรือการทำงานที่หนักเกินไป ทำให้ Server ไม่สามารถตอบสนองผู้ใช้ได้ จึงแสดงสถานะนี้ขึ้นมา
  • 504 Gateway Timeout
    เป็นสถานะที่คล้ายกับ 502 แต่จะเป็นการแสดงสถานะเมื่อ มีการเรียกใช้งาน Server แต่ Server ตอบสนองกลับช้ากว่าที่ควร บราวเซอร์ของผู้ใช้งาน จะแสดงสถานะ 504 ขึ้นมาให้ทราบนั้นเอง

สรุปส่งท้าย
     สถานะที่ได้กล่าวถึงไปทั้งหมดนั้น จะแสดงหน้าตาไม่เหมือนกัน ขึ้นอยู่กับบราวเซอร์ที่ใช้ หรือผู้จัดทำเว็บไซท์ดังกล่าวแก้ไขให้แสดงข้อมูลอย่างไรไว้ แต่อย่างน้อย เมื่อเราได้เห็น HTTP Status Code เหล่านี้ ก็จะทำให้เรารู้ว่า เราจะต้องแก้ไขสถานะการอย่างไรบ้างเมื่อเกิด HTTP Status Code ดังกล่าวขึ้น ซึ่งสถานะ 4xx เราสามารถแก้ไขเบื้องต้นได้ด้วยตัวเอง แต่ถ้าเป็นสถานะในกลุ่ม 5xx ก็ควรแจ้งให้ผู้ดูแลระบบของ Server นั้นๆ ทราบ เพื่อแก้ปัญหาต่อไปนั้นเอง


HTTP Status Codes
Annop Chaisomboun August 25, 2022
Share this post
Our blogs
Archive