404 Not Found คืออะไร

0

คนใช้อินเทอร์เน็ตทุกคนน่าจะคุ้นเคยกันดีกับ Error หมายเลข 404 ที่ตามท้ายมาด้วยข้อความอย่าง Not Found บ้าง หรือ File Not Found บ้าง เคยสงสัยไหมว่า 404 คืออะไร? ทำไมต้อง 404? ติดตามกันเลยในบทความนี้

เชื่อมต่อมีปัญหา ก็ HTTP Error ไงล่ะ

การเชื่อมต่อเข้าสู่เว็บไซต์ในระบบเครือข่ายคอมพิวเตอร์โดยทั่วไปนั้นเกิดขึ้นผ่านโปรโตคอล HTTP หรือ Hypertext Transfer Protocol โดยเมื่อเราพิมพ์ที่อยู่ของเว็บไซต์ลงไปในเบราว์เซอร์ อุปกรณ์ของเราก็จะติดต่อเข้าหาเซิฟเวอร์ของเว็บไซต์ปลายทาง และหากไม่มีปัญหาอะไร เซิฟเวอร์ก็จะตอบและส่งข้อมูลกลับมาให้เห็นเป็นหน้าเว็บไซต์นั่นเอง

ทว่าในขั้นตอนการติดต่อกันระหว่างอุปกรณ์กับเซิฟเวอร์ ในบางครั้งก็เกิดปัญหาขึ้นทำให้เราไม่สามารถเข้าถึงเว็บไซต์ได้ โดยอาจจะเป็นปัญหาในคำขอที่ส่งไป ปัญหาในการติดต่อกับเซิฟเวอร์ หรือปัญหาของเซิฟเวอร์ปลายทาง แล้วเราจะรู้ได้อย่างไรว่าเกิดปัญหาอะไรขึ้น? ผู้พัฒนาโปรโตคอล HTTP เลยกำหนดมาตรฐานขึ้นเพื่ออธิบายสถานะการติดต่อต่างๆ รวมไปถึงข้อผิดพลาดที่เกิดขึ้น

สถานะการตอบกลับในโปรโตคอล HTTP หมวด 4xx คือหมวดหมู่สำหรับข้อผิดพลาดในส่วนของอุปกรณ์ที่ส่งคำร้องไป เช่น ข้อมูลคำร้องไม่ถูกต้องหรือไม่สามารถประมวลผลได้ 

และสถานะหมายเลข 404 Not Found ก็หมายถึงการที่เซิฟเวอร์ไม่สามารถหาไฟล์หรือหน้าเว็บไซต์ที่ร้องขอไปได้ โดยอาจจะไม่มีอยู่บนเซิฟเวอร์ หรือไม่เปิดสิทธิให้เข้าถึง

Error อื่นๆมีอะไรบ้าง

นอกจาก 404 Not Found แล้ว ยังมี Error อีกหลายรหัสในหมวด 4xx ที่น่าจะคุ้นตากันดี เช่น

  • 400 Bad Request – เซิฟเวอร์ไม่สามารถประมวลข้อมูลที่ส่งไปพร้อมคำร้องได้ อาจจะเพราะรูปแบบข้อมูลที่ผิด ข้อมูลขนาดใหญ่เกินไป หรืออื่นๆ
  • 401 Unauthorized – มีคำร้องเพื่อเข้าถึงทรัพยากรที่ต้องยืนยันตัวตน แต่ไม่ได้ส่งข้อมูลยืนยันตัวตนมาให้หรือยืนยันตัวตนไม่สำเร็จ
  • 403 Forbidden – คล้ายๆกับ 401 แต่นอกจากการยืนยันตัวตนแล้วยังรวมไปถึงคำร้องในการทำบางอย่างที่ผู้ร้องไม่มีสิทธิทำ

หมวด 5xx เป็นหมวดหมู่สำหรับเลขสถานะที่เกิดข้อผิดพลาดบนฝั่งของเซิฟเวอร์ เช่น

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

อ่านเพิ่มเติมเกี่ยวกับ HTTP Status Code ทั้งหมดได้ที่นี่