Chuyển đến nội dung
SPCXTools

Mã trạng thái HTTP

Tìm kiếm và lọc các mã phản hồi HTTP tiêu chuẩn để nhanh chóng hiểu rõ lỗi máy chủ và thông báo trạng thái.

Chạy cục bộ — tệp không bao giờ rời khỏi thiết bị của bạn

Đang tải công cụ…

Cách sử dụng Mã trạng thái HTTP

  1. 1Nhập số của mã trạng thái (ví dụ: "404") hoặc tên (ví dụ: "Not Found") vào ô tìm kiếm.
  2. 2Sử dụng các bộ lọc danh mục (1xx, 2xx, 3xx, 4xx, 5xx) để duyệt qua các nhóm mã phản hồi HTTP cụ thể.
  3. 3Đọc phần mô tả bên dưới mỗi mã để hiểu ý nghĩa của nó và khi nào máy chủ sẽ trả về mã đó.

Danh sách tra cứu mã trạng thái HTTP nhanh chóng

Mỗi khi trình duyệt, ứng dụng di động hoặc bot tìm kiếm gửi yêu cầu đến máy chủ web, máy chủ sẽ phản hồi bằng một số có ba chữ số. Các mã trạng thái HTTP này cho client biết chính xác điều gì đã xảy ra: yêu cầu thành công, thất bại, cần xác thực hay cần chuyển hướng sang nơi khác.

Công cụ này cung cấp một từ điển tra cứu đầy đủ các mã phản hồi HTTP chuẩn dựa trên đặc tả RFC chính thức. Vì toàn bộ danh sách được tải và lọc cục bộ ngay trên trình duyệt, việc tìm kiếm diễn ra tức thì. Bạn không cần đợi tải lại trang để tra cứu sự khác biệt giữa mã 301 và 302, hay tìm hiểu xem lỗi 422 có ý nghĩa gì.

5 nhóm mã phản hồi HTTP

Các mã HTTP được chia thành 5 nhóm riêng biệt, xác định bởi chữ số đầu tiên. Hiểu rõ các nhóm này là cách nhanh nhất để chẩn đoán các vấn đề về truy cập web:

1xx (Thông tin)
Các mã này cho biết server đã nhận được yêu cầu và đang tiếp tục xử lý. Đây là các phản hồi tạm thời và client nên đợi phản hồi cuối cùng. Ví dụ: 100 Continue báo cho client cứ tiếp tục gửi request body.

2xx (Thành công)
Mã 2xx có nghĩa là yêu cầu của client đã được nhận, hiểu và chấp nhận thành công. Phổ biến nhất là 200 OK, đây là phản hồi chuẩn cho một yêu cầu HTTP thành công. Khi bạn tạo một bản ghi mới qua API, bạn có thể nhận được mã 201 Created.

3xx (Chuyển hướng)
Các mã này báo cho client biết cần thực hiện thêm thao tác để hoàn tất yêu cầu. Điều này thường có nghĩa là tài nguyên được yêu cầu đã bị di dời. Mã 301 Moved Permanently báo cho các công cụ tìm kiếm cập nhật lại liên kết, trong khi 302 Found cho biết đây chỉ là di dời tạm thời.

4xx (Lỗi Client)
Các mã lỗi HTTP trong dải 4xx có nghĩa là vấn đề nằm ở phía client. Yêu cầu có thể chứa cú pháp sai, thiếu xác thực hợp lệ hoặc truy vấn một tài nguyên không tồn tại. Các lỗi này rất phổ biến khi người dùng gõ sai URL hoặc khi tích hợp API gửi dữ liệu sai định dạng.

5xx (Lỗi Server)
Mã 5xx có nghĩa là server không thể thực hiện một yêu cầu hợp lệ. Client đã làm đúng mọi bước, nhưng server lại gặp sự cố nội bộ, bị sập hoặc đang trong tình trạng quá tải.

Các mã lỗi HTTP phổ biến bạn nên biết

Mặc dù có hàng tá mã lỗi, nhưng chỉ một vài mã chiếm phần lớn các lỗi mà bạn sẽ gặp phải với tư cách là lập trình viên hoặc quản trị viên web:

Mã trạng thái 404 (Không tìm thấy)
Có lẽ là lỗi nổi tiếng nhất trên internet, mã trạng thái 404 có nghĩa là máy chủ không thể tìm thấy tài nguyên được yêu cầu. Đối với chủ sở hữu trang web, việc theo dõi lỗi 404 rất quan trọng cho SEO, vì các liên kết hỏng (broken link) sẽ gây khó chịu cho người dùng và làm lãng phí crawl budget (ngân sách thu thập dữ liệu).

400 Bad Request
Máy chủ không thể xử lý yêu cầu do lỗi từ phía client, chẳng hạn như cú pháp yêu cầu sai hoặc định tuyến không hợp lệ. Các API thường trả về lỗi này khi thiếu một tham số bắt buộc.

401 Unauthorized & 403 Forbidden
Cả hai đều liên quan đến quyền truy cập. Lỗi 401 Unauthorized có nghĩa là client phải xác thực để nhận được phản hồi (ví dụ: thiếu API key). Lỗi 403 Forbidden có nghĩa là danh tính của client đã được biết, nhưng họ không có đủ quyền để truy cập tài nguyên.

500 Internal Server Error
Đây là lỗi chung cho các sự cố từ phía máy chủ (server-side). Nó có nghĩa là máy chủ gặp phải tình trạng không mong muốn khiến nó không thể thực hiện yêu cầu. Khi gặp lỗi 500, bạn thường cần kiểm tra log ứng dụng của máy chủ để tìm nguyên nhân gốc rễ.

502 Bad Gateway & 503 Service Unavailable
Lỗi 502 Bad Gateway xảy ra khi một máy chủ đóng vai trò là proxy (như Nginx hoặc load balancer) nhận được phản hồi không hợp lệ từ máy chủ tuyến trên (upstream server). Lỗi 503 Service Unavailable có nghĩa là máy chủ hiện không thể xử lý yêu cầu, thường là do quá tải hoặc đang tạm ngưng để bảo trì.

Các phương pháp hay nhất khi phát triển API

Khi xây dựng REST API, việc trả về đúng các mã trạng thái HTTP là rất quan trọng để mang lại trải nghiệm tốt cho nhà phát triển. Việc trả về mã 200 OK khi có lỗi thực sự xảy ra (thường gọi là "nuốt" lỗi) buộc client phải tự phân tích nội dung phản hồi (response body) để xác định xem yêu cầu của họ có thực sự thành công hay không.

Hãy sử dụng tài liệu tham khảo này để chọn mã trạng thái chuẩn xác nhất về mặt ngữ nghĩa. Ví dụ: dùng 429 Too Many Requests khi người dùng vượt quá giới hạn số lượng yêu cầu (rate limit), hoặc 422 Unprocessable Content khi payload JSON hợp lệ nhưng không qua được bước kiểm tra logic nghiệp vụ.

Nếu đang tìm hiểu các sự cố định tuyến (routing) của máy chủ, công cụ Kiểm tra DNS của chúng tôi sẽ rất hữu ích để xác minh các bản ghi tên miền, hoặc công cụ Phân tích User-Agent để hiểu rõ hơn về các client đang gửi yêu cầu đến máy chủ của bạn. Nếu bạn muốn quản lý cách các công cụ tìm kiếm thu thập dữ liệu (crawl) trang web của mình để tránh lỗi 404, hãy thử công cụ Tạo file Robots.txt.

Câu hỏi thường gặp

Mã trạng thái HTTP là gì?
Mã trạng thái HTTP là các số có ba chữ số do máy chủ trả về để phản hồi yêu cầu của máy khách tới một trang web hoặc API. Chúng cho biết một yêu cầu HTTP cụ thể đã hoàn tất thành công, bị chuyển hướng hay đã xảy ra lỗi.
Các nhóm mã khác nhau (từ 1xx đến 5xx) có ý nghĩa gì?
Chữ số đầu tiên xác định nhóm phản hồi. 1xx là thông tin, 2xx nghĩa là yêu cầu thành công, 3xx biểu thị sự chuyển hướng, 4xx là lỗi máy khách (như URL sai) và 5xx là lỗi máy chủ (như sự cố hoặc quá tải).
Mã trạng thái 404 là gì?
Mã trạng thái 404 có nghĩa là "Not Found" (Không tìm thấy). Mã này được trả về khi máy chủ không thể tìm thấy tài nguyên được yêu cầu. Điều này thường xảy ra khi người dùng nhấp vào một liên kết hỏng, nhập sai URL hoặc khi một trang đã bị xóa mà không có chuyển hướng.
Sự khác biệt giữa mã lỗi HTTP 4xx và 5xx là gì?
Lỗi 4xx là "Lỗi máy khách" (Client Errors), nghĩa là vấn đề nằm ở phía người yêu cầu — chẳng hạn như yêu cầu một trang không tồn tại hoặc thiếu xác thực. Lỗi 5xx là "Lỗi máy chủ" (Server Errors), nghĩa là yêu cầu của máy khách hợp lệ nhưng máy chủ không thể thực hiện do sự cố nội bộ.
Tại sao tôi nhận được lỗi 418 "I'm a teapot"?
Mã trạng thái 418 là một "trứng phục sinh" (Easter egg) nổi tiếng trong giao thức HTTP. Nó được định nghĩa vào năm 1998 như một trò đùa Cá tháng Tư trong RFC 2324 (Hyper Text Coffee Pot Control Protocol). Mặc dù không dành cho sử dụng thực tế, một số máy chủ web và API vẫn trả về mã này như một trò đùa.
Tôi có cần kết nối internet để dùng công cụ này không?
Bạn chỉ cần kết nối internet để tải trang lần đầu. Sau đó, toàn bộ danh sách và tính năng tìm kiếm sẽ chạy trực tiếp trên trình duyệt bằng JavaScript, giúp việc tìm kiếm diễn ra tức thì và không cần gửi yêu cầu đến máy chủ.