logo
GeekFormat

ค้นหารหัสสถานะ HTTP

รหัสสถานะความถี่สูง

ผลลัพธ์การค้นหา (77)

100
1xx
Continue
已收到请求头,客户端应继续发送请求体
101
1xx
Switching Protocols
服务器正按 Upgrade 切换协议(如 WebSocket)
102
1xx
Processing
已接受请求,处理尚未结束(WebDAV)
103
1xx
Early Hints
在最终响应前返回 Link 等提示以预加载资源
104
1xx
Upload Resumption Supported
表明支持可恢复上传(IANA 临时注册,详见 httpbis 可恢复上传草案)
200
2xx
OK
请求成功
201
2xx
Created
已创建资源
202
2xx
Accepted
已接受,尚未处理完成(异步任务常见)
203
2xx
Non-Authoritative Information
成功,表示可能来自代理/缓存
204
2xx
No Content
成功,无响应体
205
2xx
Reset Content
成功,客户端应重置文档或表单视图
206
2xx
Partial Content
成功返回部分内容(Range)
207
2xx
Multi-Status
多状态 XML响应(WebDAV)
208
2xx
Already Reported
DAV 绑定成员已在先前响应中列出(WebDAV)
226
2xx
IM Used
已应用实例操作(Delta 编码,RFC 3229)
300
3xx
Multiple Choices
多种表示可选,需选择或重定向
301
3xx
Moved Permanently
资源永久迁移至新 URI
302
3xx
Found
资源临时位于其他 URI
303
3xx
See Other
应使用 GET 访问另一 URI 获取结果
304
3xx
Not Modified
缓存仍有效
305
3xx
Use Proxy
须经由代理(已弃用,不建议实现)
306
3xx
(Unused)
历史占位,HTTP/1.1 起未使用
307
3xx
Temporary Redirect
临时重定向,方法与正文不变
308
3xx
Permanent Redirect
永久重定向,方法与正文不变
400
4xx
Bad Request
语法无效,无法解析
401
4xx
Unauthorized
需身份验证(常配合 WWW-Authenticate)
402
4xx
Payment Required
预留,极少实现
403
4xx
Forbidden
拒绝访问(与401 不同:未必缺凭证)
404
4xx
Not Found
未找到资源
405
4xx
Method Not Allowed
该 URI 不支持此 HTTP 方法
406
4xx
Not Acceptable
无法生成 Accept 可接受的表示
407
4xx
Proxy Authentication Required
需先通过代理认证
408
4xx
Request Timeout
等待请求超时
409
4xx
Conflict
与资源当前状态冲突
410
4xx
Gone
资源曾存在且已永久移除
411
4xx
Length Required
缺少有效 Content-Length 等
412
4xx
Precondition Failed
前置条件(如 If-*)不满足
413
4xx
Content Too Large
请求体过大(RFC 9110 用语)
414
4xx
URI Too Long
URI 过长
415
4xx
Unsupported Media Type
不支持的媒体类型
416
4xx
Range Not Satisfiable
无法满足 Range
417
4xx
Expectation Failed
无法满足 Expect 头
418
4xx
(Unused)
RFC 9110 标记未使用;典故为 RFC 2324「I'm a teapot」
421
4xx
Misdirected Request
请求未指向能响应的服务器/连接(如 HTTP/2)
422
4xx
Unprocessable Content
语义可理解但无法处理(校验失败等)
423
4xx
Locked
资源被锁定(WebDAV)
424
4xx
Failed Dependency
依赖请求失败(WebDAV)
425
4xx
Too Early
拒绝可能重放的过早请求
426
4xx
Upgrade Required
需升级到 Upgrade 指定的协议
428
4xx
Precondition Required
源站要求条件请求以防冲突
429
4xx
Too Many Requests
请求过于频繁,应限速
431
4xx
Request Header Fields Too Large
请求头整体或单项过大
444
vendor
No Response (nginx)
Nginx 直接关连接不返回状态行(常见于限流/屏蔽)
451
4xx
Unavailable For Legal Reasons
因法律原因不可提供
495
vendor
SSL Certificate Error (nginx)
Nginx:客户端证书校验失败
496
vendor
SSL Certificate Required (nginx)
Nginx:需要客户端证书
497
vendor
HTTP to HTTPS Port (nginx)
Nginx:向 HTTPS 端口发送明文 HTTP
499
vendor
Client Closed Request (nginx)
客户端在响应完成前关闭连接
500
5xx
Internal Server Error
服务器内部错误
501
5xx
Not Implemented
不支持该方法或能力
502
5xx
Bad Gateway
网关从上游收到无效响应
503
5xx
Service Unavailable
过载或维护,暂不可用
504
5xx
Gateway Timeout
网关等待上游超时
505
5xx
HTTP Version Not Supported
不支持请求中的 HTTP 版本
506
5xx
Variant Also Negotiates
透明协商配置错误
507
5xx
Insufficient Storage
存储空间不足(WebDAV)
508
5xx
Loop Detected
检测到循环(WebDAV)
510
5xx
Not Extended
需扩展(RFC 2774 实验状态,IANA 标为 OBSOLETED,可忽略)
511
5xx
Network Authentication Required
需在网络层认证(如强制门户)
520
vendor
Unknown Error (Cloudflare)
源站返回异常或空响应
521
vendor
Web Server Is Down (Cloudflare)
无法与源站建立 TCP
522
vendor
Connection Timed Out (Cloudflare)
与源站握手或连接超时
523
vendor
Origin Is Unreachable (Cloudflare)
无法路由到源站
524
vendor
A Timeout Occurred (Cloudflare)
源站已连接但未及时返回完整响应
525
vendor
SSL Handshake Failed (Cloudflare)
与源站 SSL 握手失败
526
vendor
Invalid SSL Certificate (Cloudflare)
源站证书无效
527
vendor
Railgun Error (Cloudflare)
Railgun 边缘到源监听错误(Cloudflare 专用)

เครื่องมืออ้างอิงรหัสสถานะ HTTP ฟรี ครอบคลุม 5 หมวดหมู่อย่างสมบูรณ์: 1xx ข้อมูล/2xx สำเร็จ/3xx เปลี่ยนเส้นทาง/4xx ข้อผิดพลาดฝั่งไคลเอ็นต์/5xx ข้อผิดพลาดฝั่งเซิร์ฟเวอร์ พร้อมส่วนขยายของผู้ให้บริการ รองรับการกรองหมวดหมู่และค้นหาด้วยคำสำคัญ จำเป็นสำหรับการพัฒนาและดีบัก

คำแนะนำที่เกี่ยวข้อง

กรณีการใช้งาน

  • ดีบัก Web/API: เมื่อ API มีข้อผิดพลาด ค้นหาความหมายของรหัสสถานะอย่างรวดเร็วเพื่อกำหนดทิศทางการแก้ไข (พารามิเตอร์ฟรอนต์เอนด์หรือบั๊กแบ็กเอนด์?)
  • แก้ไขปัญหาการรวม API: แยกแยะความล้มเหลวในการรับรองความถูกต้อง 401 สิทธิ์ไม่เพียงพอ 403 ที่อยู่ไม่ถูกต้อง 404 ข้อผิดพลาดเซิร์ฟเวอร์ 500
  • วินิจฉัยความล้มเหลวในการดำเนินงาน: เมื่อพบข้อผิดพลาด 502/503/504/522/524 ให้ระบุสาเหตุและวิธีแก้ไขอย่างรวดเร็ว
  • งาน SEO: ตรวจสอบว่าประเภทการเปลี่ยนเส้นทาง 301/302 ถูกต้องหรือไม่ ตรวจสอบว่าการจัดการหน้าข้อผิดพลาด 404 เหมาะสมหรือไม่
  • เรียนรู้โปรโตคอล HTTP: มือใหม่เรียนรู้หมวดหมู่รหัส HTTP และวัตถุประสงค์ของแต่ละรหัสอย่างเป็นระบบ
  • เตรียมตัวสัมภาษณ์: สัมภาษณ์ฟรอนต์เอนด์/แบ็กเอนด์มักถามถึงความแตกต่าง 301 vs 302, 401 vs 403, 502 vs 504
  • วิเคราะห์บันทึก: เข้าใจความหมายของแต่ละรหัสสถานะเมื่อวิเคราะห์บันทึกการเข้าถึง Nginx/Apache/CDN

คุณสมบัติ

  • ครอบคลุมอย่างสมบูรณ์: รหัสมาตรฐาน 1xx-5xx + ส่วนขยายผู้ให้บริการ Cloudflare/Nginx (5xx vendor) ทั้งหมดในที่เดียว
  • การ์ดเข้าถึงด่วน: 12 รหัสที่ใช้มากที่สุด (200/301/302/304/400/401/403/404/429/500/502/503) — คลิกที่การ์ดเพื่อดูรายละเอียดโดยตรง
  • ตัวกรองหมวดหมู่: กรองด้วยคลิกเดียวตามหมวดหมู่ 1xx/2xx/3xx/4xx/5xx/vendor เพื่อระบุประเภทปัญหาได้อย่างรวดเร็ว
  • ค้นหาด้วยคำสำคัญ: รองรับการค้นหาแบบ fuzzy ตามหมายเลขรหัส ชื่อภาษาอังกฤษ หรือคำอธิบายเพื่อค้นหารหัสเป้าหมายได้อย่างรวดเร็ว
  • การเข้ารหัสสี: 2xx สีเขียว (สำเร็จ), 3xx/4xx สีเหลือง (เตือน/ปัญหาไคลเอ็นต์), 5xx สีแดง (ปัญหาเซิร์ฟเวอร์) สำหรับการประเมินด้วยภาพที่ง่าย
  • ตารางบนเดสก์ท็อป/การ์ดบนมือถือ: แสดงตารางเต็มบนเดสก์ท็อป แสดงการ์ดตอบสนองบนมือถือเพื่อประสบการณ์ที่ยอดเยี่ยมบนทุกอุปกรณ์
  • คัดลอกสรุปที่กรองแล้วด้วยคลิกเดียว: คัดลอกเงื่อนไขตัวกรองปัจจุบันและจำนวนผลลัพธ์สำหรับตั๋ว/เอกสาร

วิธีการใช้งาน

  1. เพียงพิมพ์หมายเลขรหัสสถานะ (เช่น 404) หรือคำสำคัญ (เช่น redirect, forbidden, timeout) ในช่องค้นหา
  2. หรือคลิกปุ่มหมวดหมู่ (1xx/2xx/3xx/4xx/5xx/vendor) เพื่อนำทางตามหมวดหมู่
  3. คลิกที่การ์ดรหัสที่ใช้บ่อยเพื่อกรองรหัสนั้นอย่างรวดเร็ว
  4. ดูชื่อรหัสสถานะ สีหมวดหมู่ และคำอธิบายโดยละเอียด
  5. คลิกปุ่มคัดลอกเพื่อคัดลอกสรุปที่กรองแล้วปัจจุบันสำหรับการบันทึกปัญหา

คำถามที่พบบ่อย

รหัสสถานะ HTTP คืออะไรและใช้ทำอะไร?

รหัสสถานะ HTTP คือรหัสตัวเลขสามหลักที่เซิร์ฟเวอร์ส่งคืนเพื่อตอบสนองต่อคำขอ HTTP ซึ่งระบุว่าคำขอสำเร็จ ล้มเหลว หรือต้องการการดำเนินการเพิ่มเติม แบ่งออกเป็น 5 หมวดหมู่: 1xx ข้อมูล, 2xx สำเร็จ, 3xx เปลี่ยนเส้นทาง, 4xx ข้อผิดพลาดไคลเอ็นต์, 5xx ข้อผิดพลาดเซิร์ฟเวอร์ ระหว่างการพัฒนาและดีบัก รหัสสถานะจะบอกทิศทางของปัญหาอย่างรวดเร็ว: 2xx สำเร็จไม่ต้องดำเนินการ; 4xx ตรวจสอบพารามิเตอร์คำขอ/การรับรองความถูกต้อง/สิทธิ์/ขีดจำกัดอัตรา; 5xx ตรวจสอบบันทึกเซิร์ฟเวอร์

ความแตกต่างที่แท้จริงระหว่างการเปลี่ยนเส้นทาง 301 และ 302 คืออะไร?

ความแตกต่างหลัก: 301 คือ **การเปลี่ยนเส้นทางถาวร** — เบราว์เซอร์/เครื่องมือค้นหาจะแคชที่อยู่ใหม่และอำนาจ SEO จะถูกโอนไปยัง URL ใหม่; 302 คือ **การเปลี่ยนเส้นทางชั่วคราว** — จะไม่ถูกแคชและไม่มีการโอนอำนาจ นอกจากนี้ยังมีความแตกต่างที่สำคัญในการเปลี่ยนเมธอด: ในอดีต 301/302 เปลี่ยน POST เป็น GET (พฤติกรรมที่ไม่ถูกต้อง) ในขณะที่ 307/308 รักษาเมธอดคำขอเดิมอย่างเข้มงวด ใช้ 301 สำหรับการเปลี่ยนเส้นทาง HTTPS การย้ายโดเมน การเปลี่ยนแปลง URL ถาวร; ใช้ 302 หรือ 307 สำหรับการบำรุงรักษาชั่วคราวและหน้าแคมเปญ

ความแตกต่างระหว่าง 401 และ 403 คืออะไร?

401 Unauthorized หมายถึง 'ไม่ได้รับการรับรองความถูกต้อง' — เซิร์ฟเวอร์ไม่ทราบว่าคุณเป็นใคร คุณต้องเข้าสู่ระบบ/ให้ Token ก่อน (มักมาพร้อมกับส่วนหัว WWW-Authenticate); 403 Forbidden หมายถึง 'รับรองความถูกต้องแล้วแต่ไม่มีสิทธิ์' — เซิร์ฟเวอร์ทราบว่าคุณเป็นใคร แต่คุณไม่มีสิทธิ์เข้าถึงทรัพยากรนี้ พูดง่ายๆ คือ: 401 คือ 'คุณไม่ได้นำบัตรเข้า', 403 คือ 'คุณมีบัตรแต่ไม่สามารถเข้าห้องนี้ได้'

ความแตกต่างระหว่าง 502, 503 และ 504 คืออะไร?

ทั้งหมดเป็นข้อผิดพลาดเซิร์ฟเวอร์แต่มีสาเหตุต่างกัน: 502 Bad Gateway หมายถึง reverse proxy ได้รับ **การตอบกลับไม่ถูกต้อง** จาก upstream (backend ขัดข้อง/ข้อผิดพลาดโปรโตคอล); 503 Service Unavailable หมายถึงเซิร์ฟเวอร์ **ไม่สามารถใช้งานได้ชั่วคราว** (โหลดมากเกินไป/บำรุงรักษา/บริการไม่ได้เริ่มทำงาน); 504 Gateway Timeout หมายถึงพร็อกซีเซิร์ฟเวอร์ **หมดเวลารอ upstream** (backend ประมวลผลช้าเกินไป/คิวรีฐานข้อมูลช้า) ในการแก้ไขปัญหา: สำหรับ 502 ให้ตรวจสอบว่ากระบวนการ backend ทำงานอยู่หรือไม่และบันทึกข้อผิดพลาด; สำหรับ 503 ตรวจสอบสถานะบริการ/ขีดจำกัดอัตรา/หน้าบำรุงรักษา; สำหรับ 504 ตรวจสอบประสิทธิภาพ backend/คิวรีช้า/การกำหนดค่า timeout

เมื่อใดควรใช้ 200 OK เทียบกับ 204 No Content?

200 OK คือการตอบกลับสำเร็จมาตรฐานและสามารถส่งคืนเนื้อหาการตอบกลับได้ (เช่น ผลลัพธ์คิวรี ข้อมูลทรัพยากรที่สร้าง); 204 No Content ระบุว่าสำเร็จแต่ **ไม่ส่งคืนเนื้อหาการตอบกลับ** ซึ่งมักใช้สำหรับ DELETE ที่สำเร็จ การอัปเดต PUT/POST ที่สำเร็จซึ่งไม่จำเป็นต้องส่งคืนข้อมูล การตอบกลับ 204 ไม่ควรมีเนื้อหา

จะจัดการรหัสจำกัดอัตรา 429 ได้อย่างไร?

429 Too Many Requests หมายถึงไคลเอ็นต์เกินขีดจำกัดความถี่ของคำขอเซิร์ฟเวอร์ การตอบกลับมักมีส่วนหัว Retry-After ที่ระบุว่าต้องรอกี่วินาทีก่อนลองอีกครั้ง ไคลเอ็นต์ควรใช้ backoff แบบเลขชี้กำลัง (Exponential Backoff): รอ 1 วินาทีในครั้งแรก 2 ในครั้งที่สอง 4 ในครั้งที่สาม... นอกจากนี้ ให้ตรวจสอบส่วนหัว X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset เพื่อทราบโควต้าจำกัดอัตรา

รหัสส่วนขยายของผู้ให้บริการ เช่น 520-527 ของ Cloudflare คืออะไร?

รหัสสถานะ HTTP มาตรฐานถูกกำหนดเฉพาะในช่วง 100-599 และส่วนใหญ่ได้รับการลงทะเบียนที่ IANA แต่ผู้ให้บริการ CDN/พร็อกซีกำหนดส่วนขยายที่กำหนดเอง: Cloudflare กำหนดซีรีส์ 520-527 สำหรับปัญหาการเชื่อมต่อกับต้นทาง (521 ต้นทางปฏิเสธ, 522 หมดเวลาการเชื่อมต่อ, 524 หมดเวลาการตอบกลับ ฯลฯ); Nginx กำหนด 499 (ไคลเอ็นต์ปิดการเชื่อมต่อ) รหัสเหล่านี้ไม่ใช่รหัส HTTP มาตรฐานแต่มักปรากฏในการแก้ไขปัญหาการดำเนินงานจริง และเครื่องมือนี้รวมถึงรหัสส่วนขยายของผู้ให้บริการที่ใช้กันทั่วไป

รหัสสถานะ HTTP คืออะไร?

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

รหัสสถานะแบ่งออกเป็น 5 หมวดหมู่ตามหลักแรก: **1xx การตอบกลับข้อมูล** (ได้รับคำขอแล้ว กำลังดำเนินการต่อ พบน้อยในทางปฏิบัติ); **2xx สำเร็จ** (คำขอได้รับการประมวลผลสำเร็จ รหัสที่พบบ่อยที่สุดคือ 200 OK); **3xx เปลี่ยนเส้นทาง** (ต้องมีการดำเนินการเพิ่มเติมจากไคลเอ็นต์ เช่น 301 เปลี่ยนเส้นทางถาวร, 302 เปลี่ยนเส้นทางชั่วคราว, 304 แคชฮิต); **4xx ข้อผิดพลาดไคลเอ็นต์** (ปัญหากับคำขอ เช่น 400 พารามิเตอร์ไม่ถูกต้อง, 401 ไม่ได้รับการรับรองความถูกต้อง, 403 ไม่มีสิทธิ์, 404 ไม่พบ, 429 ขีดจำกัดอัตรา); **5xx ข้อผิดพลาดเซิร์ฟเวอร์** (เซิร์ฟเวอร์ไม่สามารถประมวลผลคำขอได้ เช่น 500 ข้อผิดพลาดภายใน, 502 Bad Gateway, 503 ไม่สามารถใช้งานได้, 504 หมดเวลา)

**เหตุใดจึงต้องแยกแยะ 4xx และ 5xx?** นี่คือการประเมินลำดับความสำคัญแรกเมื่อแก้ไขปัญหา: เมื่อเห็น 4xx คุณควรตรวจสอบคำขอของคุณก่อน — URL ถูกต้องหรือไม่ พารามิเตอร์ครบถ้วนหรือไม่ มี Token แนบมาหรือไม่ สิทธิ์เพียงพอหรือไม่ คำขอถี่เกินไปหรือไม่?; เมื่อเห็น 5xx คุณต้องตรวจสอบบันทึกเซิร์ฟเวอร์ — กระบวนการแบ็กเอนด์ทำงานปกติหรือไม่ ฐานข้อมูลเชื่อมต่อหรือไม่ การกำหนดค่าถูกต้องหรือไม่ มีโหลดมากเกินไปหรือไม่?. การไปในทิศทางที่ผิดจะเสียเวลาดีบักเป็นอย่างมาก

**ความแตกต่างระหว่างรหัสเปลี่ยนเส้นทางเป็นหัวข้อที่พบบ่อยในการสอบ**: 301 คือการเปลี่ยนเส้นทางถาวร (การโอนอำนาจ SEO แคชเบราว์เซอร์), 302 คือการเปลี่ยนเส้นทางชั่วคราว (ไม่มีการโอนอำนาจ), 307/308 รักษาเมธอดคำขออย่างเข้มงวด (POST จะไม่ถูกแปลงเป็น GET) ในทางปฏิบัติใช้ 301 สำหรับการเปลี่ยนเส้นทาง HTTPS และการย้ายโดเมน, 302 สำหรับการบำรุงรักษาชั่วคราว, 303 สำหรับการเปลี่ยนเส้นทางหลังส่งฟอร์ม POST (รูปแบบ PRG)

เครื่องมือนี้ **รวม** รหัสสถานะ HTTP มาตรฐานทั้งหมดอย่างสมบูรณ์ (รวมถึงรหัสที่สับสนได้ง่ายเช่น 303/307/308, 405/409/422/429 ฯลฯ) รวมถึงรหัสส่วนขยายของผู้ให้บริการที่ใช้กันทั่วไปจาก Cloudflare/Nginx (520-527, 499) รองรับการกรองหมวดหมู่ ค้นหาด้วยคำสำคัญ และการ์ดเข้าถึงด่วน — เครื่องมืออ้างอิงประจำวันที่จำเป็นสำหรับการดีบักการพัฒนา แก้ไขปัญหา API และค้นหาตำแหน่งความล้มเหลวในการดำเนินงาน

术语表

HTTP
HyperText Transfer Protocol โปรโตคอลพื้นฐานสำหรับการสื่อสารข้อมูลบน World Wide Web โดยอาศัย TCP/IP ใช้โมเดลคำขอ-การตอบกลับ เวอร์ชันหลักในปัจจุบันคือ HTTP/1.1 และ HTTP/2 โดย HTTP/3 อาศัย QUIC
Idempotency (ความเป็นเอกพจน์)
การดำเนินการคำขอเดียวกันหลายครั้งมีผลเช่นเดียวกับการดำเนินการครั้งเดียว GET/HEAD/PUT/DELETE/OPTIONS/TRACE เป็น idempotent; POST ไม่ใช่ idempotent (การส่งหลายครั้งสร้างทรัพยากรหลายรายการ) เหตุผลสำคัญที่ 307/308 รักษาเมธอดคือการรักษา idempotency
CORS (Cross-Origin Resource Sharing)
กลไกสำหรับการเข้าถึงข้ามต้นทางภายใต้นโยบาย same-origin ของเบราว์เซอร์ คำขอ CORS preflight (OPTIONS) สามารถส่งคืน 405 Method Not Allowed หรือข้อผิดพลาดที่เกี่ยวข้องกับ CORS ซึ่งเป็นหนึ่งในปัญหาที่พบบ่อยที่สุดในการพัฒนาฟรอนต์เอนด์
รูปแบบ PRG (Post/Redirect/Get)
แนวทางปฏิบัติที่ดีที่สุดสำหรับการส่งฟอร์มเว็บ: หลังจากส่งฟอร์มด้วย POST ให้ส่งคืนการเปลี่ยนเส้นทาง 303 See Other ไปยังหน้าผลลัพธ์ เพื่อหลีกเลี่ยงการส่งซ้ำเมื่อผู้ใช้รีเฟรช นี่คือกรณีการใช้งานทั่วไปที่สุดของ 303
Retry-After
ส่วนหัวการตอบกลับ HTTP ที่ใช้กับ 503 Service Unavailable หรือ 429 Too Many Requests เพื่อบอกไคลเอ็นต์ว่าต้องรอกี่วินาทีก่อนลองคำขออีกครั้ง
WWW-Authenticate
ส่วนหัวการตอบกลับ HTTP ที่ใช้กับ 401 Unauthorized เพื่อบอกไคลเอ็นต์ว่าจะใช้สคีมาการรับรองความถูกต้องใด (Basic/Bearer/Digest ฯลฯ) และขอบเขตการรับรองความถูกต้อง
ETag / If-None-Match
กลไกการตรวจสอบแคช เซิร์ฟเวอร์ส่งคืน ETag ที่ระบุเวอร์ชันของทรัพยากร; ไคลเอ็นต์ส่งส่วนหัว If-None-Match ในคำขอต่อๆ ไป และหากทรัพยากรไม่เปลี่ยนแปลง เซิร์ฟเวอร์จะส่งคืน 304 Not Modified (ไม่มีเนื้อหา ประหยัดแบนด์วิดท์)
Reverse Proxy
เซิร์ฟเวอร์พร็อกซี (เช่น Nginx, Cloudflare, HAProxy) ที่อยู่ระหว่างไคลเอ็นต์และเซิร์ฟเวอร์แบ็กเอนด์ รับคำขอจากไคลเอ็นต์และส่งต่อไปยังแบ็กเอนด์ จากนั้นส่งคืนการตอบกลับจากแบ็กเอนด์ไปยังไคลเอ็นต์ ข้อผิดพลาด 502/503/504 เกิดขึ้นทั้งหมดระหว่าง reverse proxy และแบ็กเอนด์

ภาพรวม 5 หมวดหมู่รหัสสถานะ HTTP

คลาสความหมายวัตถุประสงค์รหัสที่ใช้บ่อย
1xxการตอบกลับข้อมูล (Informational)ได้รับคำขอแล้ว กำลังดำเนินการต่อ (สถานะระหว่างกลางของโปรโตคอล)100 Continue, 101 Switching Protocols
2xxการตอบกลับสำเร็จ (Success)เซิร์ฟเวอร์ได้รับ เข้าใจ และยอมรับคำขอสำเร็จแล้ว200 OK, 201 Created, 204 No Content, 206 Partial Content
3xxการเปลี่ยนเส้นทาง (Redirection)ต้องมีการดำเนินการเพิ่มเติมจากไคลเอ็นต์เพื่อให้คำขอสมบูรณ์301 Moved Permanently, 302 Found, 304 Not Modified, 307/308
4xxข้อผิดพลาดฝั่งไคลเอ็นต์ (Client Error)คำขอมีข้อผิดพลาดทางไวยากรณ์หรือไม่สามารถดำเนินการได้ ความผิดของไคลเอ็นต์400 Bad Request, 401 Unauthorized, 403 Forbidden, 404 Not Found, 429 Too Many Requests
5xxข้อผิดพลาดฝั่งเซิร์ฟเวอร์ (Server Error)เซิร์ฟเวอร์ไม่สามารถดำเนินการคำขอที่ดูเหมือนถูกต้องได้ ความผิดของเซิร์ฟเวอร์500 Internal Server Error, 502 Bad Gateway, 503 Service Unavailable, 504 Gateway Timeout

เปรียบเทียบรหัสเปลี่ยนเส้นทางที่ใช้บ่อย (301/302/303/307/308)

รหัสชื่อถาวรการเปลี่ยนเมธอดแคชได้กรณีการใช้งานทั่วไป
301Moved Permanently✅ ถาวรPOST อาจกลายเป็น GET (ความเข้ากันได้ทางประวัติศาสตร์)✅ แคชโดยค่าเริ่มต้นออกแบบเว็บใหม่ ย้ายโดเมน HTTP→HTTPS URL เก่าเลิกใช้
302Found❌ ชั่วคราวPOST อาจกลายเป็น GET (ความเข้ากันได้ทางประวัติศาสตร์)❌ ไม่แคชโดยค่าเริ่มต้นเปลี่ยนเส้นทางบำรุงรักษาชั่วคราว หน้าแคมเปญ ทดสอบ A/B
303See Other❌ ชั่วคราวPOST→GET (การเปลี่ยนแปลงอย่างชัดเจน)❌ ไม่แคชโดยค่าเริ่มต้นเปลี่ยนเส้นทางไปยังหน้าผลลัพธ์หลังส่งฟอร์ม POST (รูปแบบ PRG)
307Temporary Redirect❌ ชั่วคราวรักษาเมธอดเดิมอย่างเข้มงวด❌ ไม่แคชโดยค่าเริ่มต้นเปลี่ยนเส้นทางชั่วคราวที่รักษาเมธอดและเนื้อหาคำขออย่างเข้มงวด
308Permanent Redirect✅ ถาวรรักษาเมธอดเดิมอย่างเข้มงวด✅ แคชโดยค่าเริ่มต้นเปลี่ยนเส้นทางถาวรที่ป้องกันไม่ให้ POST แปลงเป็น GET

คู่มือแก้ไขปัญหาข้อผิดพลาดไคลเอ็นต์ที่พบบ่อย

รหัสความหมายสาเหตุที่พบบ่อยแนวทางแก้ไข
400Bad Requestข้อผิดพลาดไวยากรณ์คำขอ/ขาดพารามิเตอร์/ข้อผิดพลาดรูปแบบ JSON/ส่วนหัวใหญ่เกินไปตรวจสอบพารามิเตอร์คำขอ Content-Type การเข้ารหัส URL
401Unauthorizedไม่ได้รับการรับรองความถูกต้อง/Token หมดอายุ/ไม่มีส่วนหัว Authorizationตรวจสอบสถานะการเข้าสู่หมดอายุของ Token รูปแบบส่วนหัว Bearer
403Forbiddenรับรองความถูกต้องแล้วแต่ไม่มีสิทธิ์/IP ถูกบล็อก/CSRF Token ไม่ถูกต้อง/WAF บล็อกตรวจสอบสิทธิ์ผู้ใช้ รายการ IP ที่อนุญาต กฎ WAF CSRF Token
404Not FoundURL ไม่มีอยู่/ทรัพยากรถูกลบ/ข้อผิดพลาดการกำหนดค่าการกำหนดเส้นทางตรวจสอบการสะกด URL การกำหนดค่าเส้นทาง ว่าทรัพยากรถูกลบหรือไม่
405Method Not Allowedเมธอดคำขอไม่ถูกต้อง (เช่น ใช้ POST บน endpoint ที่รับแค่ GET)ตรวจสอบเมธอด HTTP (GET/POST/PUT/DELETE ฯลฯ), CORS preflight
408Request Timeoutไคลเอ็นต์ส่งคำขอช้าเกินไป/ความหน่วงของเครือข่าย/timeout เซิร์ฟเวอร์สั้นเกินไปตรวจสอบการเชื่อมต่อเครือข่าย เพิ่ม timeout อัปโหลดเป็นชุด
409Conflictความขัดแย้งของทรัพยากร (เช่น สร้างซ้ำ ความขัดแย้งของเวอร์ชัน การแก้ไขพร้อมกัน)ตรวจสอบการส่งซ้ำ ใช้การล็อกแบบออพติมิสติก/คีย์ idempotency
413Payload Too Largeไฟล์ที่อัปโหลด/เนื้อหาคำขอเกินขีดจำกัดของเซิร์ฟเวอร์ตรวจสอบ client_max_body_size ของ nginx บีบอัดไฟล์ อัปโหลดแบบแบ่งส่วน
422Unprocessable Entityรูปแบบคำขอถูกต้องแต่มีข้อผิดพลาดเชิงความหมาย (เช่น การตรวจสอบฟิลด์ล้มเหลว)ตรวจสอบความถูกต้องพารามิเตอร์ RESTful API ตรวจสอบฟิลด์ที่จำเป็น ประเภทข้อมูล รูปแบบ
429Too Many Requestsเกินขีดจำกัดอัตรา/ความถี่คำขอสูงเกินไปลดความถี่คำขอ เพิ่ม backoff แบบเลขชี้กำลัง ขอโควต้าที่มากขึ้น

ข้อผิดพลาดเซิร์ฟเวอร์ที่พบบ่อยและรหัสส่วนขยาย Cloudflare

รหัสความหมายสาเหตุที่พบบ่อย
500Internal Server Errorข้อยกเว้นในโค้ดเซิร์ฟเวอร์/ข้อผิดพลาดที่ไม่ได้จับ/การเชื่อมต่อฐานข้อมูลล้มเหลว/ข้อผิดพลาดการกำหนดค่า
501Not Implementedเซิร์ฟเวอร์ไม่รองรับฟังก์ชันที่ร้องขอ (เช่น เมธอด HTTP ที่ไม่รองรับ)
502Bad GatewayReverse proxy (nginx/CDN) ได้รับการตอบกลับไม่ถูกต้องจาก upstream/กระบวนการ backend ขัดข้อง/PHP-FPM ไม่ได้เริ่มทำงาน
503Service Unavailableเซิร์ฟเวอร์โหลดมากเกินไป/อยู่ระหว่างบำรุงรักษา/บริการ backend ไม่ได้เริ่มทำงาน/พูลการเชื่อมต่อหมด
504Gateway TimeoutReverse proxy หมดเวลารอการตอบกลับจาก upstream/backend ประมวลผลช้าเกินไป/คิวรีฐานข้อมูลช้า
520Web Server Returned Unknown Error (CF)Cloudflare: ต้นทางส่งคืนการตอบกลับที่ไม่รู้จัก/ผิดปกติ (ข้อผิดพลาดโปรโตคอล/การตอบกลับว่าง/ไม่มีรหัสสถานะ)
521Web Server Is Down (CF)Cloudflare: เซิร์ฟเวอร์ต้นทางปฏิเสธการเชื่อมต่อ (ต้นทางออฟไลน์/ไฟร์วอลล์บล็อก IP CF)
522Connection Timed Out (CF)Cloudflare: ไม่สามารถสร้างการเชื่อมต่อ TCP กับต้นทางได้ (ไฟร์วอลล์ต้นทาง/security group/iptables)
523Origin Is Unreachable (CF)Cloudflare: IP ต้นทางไม่สามารถเข้าถึงได้ (เซิร์ฟเวอร์ต้นทางไม่มีอยู่/ปัญหาการกำหนดเส้นทาง)
524A Timeout Occurred (CF)Cloudflare: การเชื่อมต่อ TCP สำเร็จแต่ต้นทางหมดเวลาส่งคืนการตอบกลับ HTTP (>100วินาที) พบบ่อยกับคิวรีช้า/งานที่ใช้เวลานาน
499Client Closed Request (Nginx)รหัสส่วนขยาย Nginx: ไคลเอ็นต์ปิดการเชื่อมต่อก่อนที่เซิร์ฟเวอร์จะตอบกลับ (ผู้ใช้ยกเลิก/timeout ฟรอนต์เอนด์)

Authoritative References

เครื่องมือสร้าง Authentication Headerเครื่องมือวิเคราะห์ Cache-Controlเครื่องมือวิเคราะห์ Content-Dispositionเครื่องมือสร้าง CORS Headerเครื่องมือตรวจสอบ CORSCSP Builderตัวแปลง cURL เป็นโค้ดตรวจสอบการแพร่กระจาย DNS ทั่วโลกค้นหา DNSForwarded Header Parserเครื่องมือสร้าง Hreflang TagHSTS AnalyzerHTTP Cookie ParserHTTP Headers CheckerHTTP Request Runnerค้นหารหัสสถานะ HTTPค้นหา IPตัวแปลง IPv4เครื่องมือขยายช่วง IPv4เครื่องมือจัดการที่อยู่ IPv6ตัวแยกวิเคราะห์ส่วนหัว Linkค้นหา MX Recordตรวจสอบพอร์ตสร้างพารามิเตอร์ URLตัวแยกวิเคราะห์ส่วนหัว Rate Limitเครื่องมือตรวจสอบห่วงโซ่การเปลี่ยนเส้นทางสร้าง Robots.txtตรวจสอบ Robots.txtตรวจสอบส่วนหัวความปลอดภัยสร้าง Security.txtตัวแยกวิเคราะห์ Set-Cookieตรวจสอบเครือข่ายเว็บไซต์สร้าง Sitemapตรวจสอบ Sitemapตัวตรวจสอบใบรับรอง SSLเครื่องคำนวณซับเน็ตตัวแยกวิเคราะห์ URLตัวแยกวิเคราะห์ User-Agentตัวสร้างลิงก์ UTMทดสอบ WebSocketWhat Is My IP?ค้นหา WHOIS