Lỗi server responded with 0 code trong pdf

Chắc rằng chúng ta ai cũng từng thất vọng toàn tập khi lỗi “404 Not Found” khét tiếng xuất hiện trên màn hình. Dù nổi danh như thế, nhưng điều ngạc nhiên là không quá nhiều người biết chính xác mã này là gì.

Vì vậy, hôm nay ta cùng tìm hiểu về những nỗi đau của mọi cư dân mạng – mã trạng thái HTTP!

Lỗi server responded with 0 code trong pdf

Tổng thể về Mã trạng thái HTTP

Mã trạng thái HTTP (HTTP status code) là câu trả lời của máy chủ (server) cho yêu cầu đến từ máy khách (client). Một trong những mã phổ biến nhất – 404 – là mã trạng thái HTTP đề cập đến lỗi “Not Found” (Không tìm thấy trang web được yêu cầu). Bên cạnh 404, có rất nhiều mã trạng thái lỗi HTTP (HTTP error code) khác.

Khi bạn truy cập tới một trang web nào đó, mã trạng thái HTTP là thông báo từ server phản hồi cho yêu cầu truy cập đó của bạn. Mã trạng thái HTTP không phải là nội dung của trang web. Bạn có thể xem nó như ghi chú chú thích về việc gì đang diễn ra tại trang web này.

Cách thức mã trạng thái HTTP hoạt động và Danh mục mã

Mã trạng thái HTTP xảy ra khi trình duyệt web (browser như Chrome, Firefox,..) gửi yêu cầu đến server mỗi khi ai đó truy cập trang web (như khi bạn nhấp vào một đường link hoặc nhập địa chỉ vào URL và nhấn Enter). Trước khi hiển thị trang web, server phải nhận được yêu cầu, xử lý và sau đó truyền tiêu đề HTTP (HTTP header) mang mã trạng thái của trang web đó đến browser của khách hàng.

Mặc dù server luôn trả lại các mã mỗi khi browser yêu cầu bất kỳ trang web nào, nhưng phần lớn các mã đó sẽ không hiển thị. Ví dụ: mã trạng thái của trang web chuẩn là “200 O.K.”. Khi một trang web vẫn hoạt động tốt, bạn sẽ không thấy mã trạng thái 200, vì máy chủ sẽ truyền nội dung của trang đó cho bạn. Nói chung, chỉ khi nào có sai sót gì, bạn mới thấy mã trạng thái hiện lên. Đây là cách server giải thích: “Có điều gì đó không ổn, đây là đoạn mã làm rõ những lỗi gì đang xảy ra.”

Lỗi server responded with 0 code trong pdf

Mã trạng thái HTTP thường có ba chữ số với tổng cộng năm danh mục. Chữ số đầu tiên của mã trạng thái cho biết loại phản hồi:

  • 1xx – Informational: Phản hồi thông tin
  • 2xx – Success: Xử lý thành công
  • 3xx – Redirection: Chuyển hướng
  • 4xx – Client Error: Lỗi máy khách
  • 5xx – Server Error: Lỗi máy chủ

Tại sao các mã trạng thái này lại gom một nhóm ba chữ số? Nguyên nhân là vì ba số thì dễ nhớ hơn, tương tự như TLA (viết tắt ba chữ). Rất nhiều thuật ngữ trong máy tính là TLA, nên cũng không có gì ngạc nhiên khi mã trạng thái có ba con số.

Thông báo lỗi HTTP và ý nghĩa của chúng

Như đã nói, mã HTTP là một nhóm ba ký tự với năm lớp, nhưng ý nghĩa chính xác đằng sau những con số này là gì?

Giải thích Mã lỗi HTTP

Hãy lấy mã 404 làm ví dụ. Chúng ta có thể chia mã thành ba số riêng biệt, tương tự như cách chúng ta phát âm: 4, 0 và 4.

4 đầu tiên (ở định dạng 4xx) cho biết đó là lỗi của khách hàng. Có thể bạn đã phạm sai sót nào đó, chẳng hạn như một lỗi chính tả khi nhập URL, hoặc trang web chỉ đơn giản là không còn tồn tại nữa.

Số 0 ở giữa chỉ ra lỗi cú pháp chung. Và số cuối cùng, có thể là bất kỳ thứ gì từ 0 đến 9, đề cập đến vấn đề cụ thể nào nằm trong danh mục lỗi 4xx – trong trường hợp 404, thứ bạn đang tìm kiếm không tồn tại. Kết luận lại ta có mã 404 cho biết đó là lỗi “không tìm thấy” (do không tồn tại) từ phía máy khách.

Danh sách mã lỗi HTTP (Mã trạng thái HTTP + Lý do xuất hiện các mã lỗi)

Mã trạng thái lỗiÝ nghĩa mã3xxURL chuyển hướng đến URL khác300 Multiple ChoiceYêu cầu có nhiều phản hồi mà khách hàng có thể chọn301 Moved permanentlyURL được yêu cầu đã được thay đổi vĩnh viễn và phản hồi cũng chứa URL mới302 Found (trước đó là Moved Temporarily)Địa chỉ trang đã được thay đổi tạm thời và có URL mới303 See OtherDo dữ liệu ở nơi khác nên máy chủ sẽ chuyển hướng máy khách bằng phương thức GET304 Found (previously Moved TemporarilyTài nguyên chưa được sửa đổi nên khách hàng có thể tiếp tục sử dụng phiên bản đã lưu trong bộ nhớ cache305 Use ProxyYêu cầu truy cập qua proxy. Vì lý do bảo mật, mã này không còn được sử dụng4xxSự cố xảy ra từ phía máy khách400 Bad RequestMáy chủ không thể hiểu yêu cầu do lỗi máy khách (ví dụ: cú pháp bị sai định dạng, định tuyến yêu lừa đảo, v.v.)401 UnauthorizedMáy khách bị từ chối truy cập do không có thông tin xác thực hợp lệ402 Payment RequiredMục đích ban đầu của mã 402 là hình thức phương thức thanh toán kỹ thuật số. Mã đang được để dành trong tương lai403 ForbiddenMáy chủ web từ chối quyền truy cập của máy khách404 Not FoundCác file / trang web được yêu cầu không tồn tại hoặc đã bị xóa nên không có trên máy chủ405 Method Not AllowedTài nguyên mà máy khách yêu cầu không được máy chủ hỗ trợ406 Not AcceptableMáy chủ hiểu và xử lý yêu cầu, nhưng máy khách không thể hiểu hình thức phản hồi407 Proxy Authentication RequiredYêu cầu máy khách phải xác thực bằng proxy408 Request Time-outMáy chủ mất quá nhiều thời gian để xử lý yêu cầu (thường là do lưu lượng mạng quá cao)409 ConflictYêu cầu của máy khách xung đột với yêu cầu hiện có trong máy chủ410 GoneTương tự như mã 404, mã 410 cho biết tài nguyên không còn tồn tại nữa, vì vậy các công cụ tìm kiếm có thể xóa tài nguyên này khỏi các chỉ mục index411 Length RequiredThiếu header Độ dài nội dung (header Content-Length) nên máy chủ từ chối xử lý yêu cầu412 Precondition Failed Máy chủ không đáp ứng các điều kiện trong header của yêu cầu413 Payload Too Large Yêu cầu quá lớn so với khả năng của máy chủ414 URI Too LongURI được cung cấp quá dài để máy chủ xử lý415 Unsupported Media TypeMáy chủ không hỗ trợ loại file được yêu cầu5xxSự cố xảy ra từ phía máy chủ 500 Internal Server ErrorThông báo lỗi chung – máy chủ web có vấn đề gì đó hoặc không thể xác định chính xác vấn đề là gì.501 Not ImplementedMáy chủ không thể xử lý yêu cầu vì không hỗ trợ cùng phương thức502 Bad GatewayKhi hoạt động như một cổng Gateway, máy chủ nhận được phản hồi không hợp lệ từ máy chủ upstream503 Service UnavailableLỗi tạm thời khi máy chủ không thể xử lý yêu cầu (ví dụ: máy chủ bị quá tải hoặc ngừng hoạt động)504 Gateway Time-outTương tự như lỗi 408 Request time-out, nhưng lỗi này xảy ra ở cổng máy chủ (Server port), cho thấy máy chủ đang ngừng hoặc không hoạt động.505 HTTP Version Not SupportedMáy chủ không hỗ trợ phiên bản HTTP của yêu cầu

Ngoài ra, trong bảng mã lỗi phổ biến này, bạn có thể thấy không hề có danh mục mã 1xx và 2xx. Đó là do cả hai danh mục 1xx và 2xx đều có nghĩa là server đã nhận, hiểu và chấp nhận yêu cầu của khách hàng – Chúng là mã “thành công”, không phải mã “lỗi”, và sẽ không hiển thị cho phía client.

Sự trỗi dậy của Mã trạng thái HTTP

Một trong những mã HTTP đã trở nên quá nổi tiếng, nó không chỉ là thuật ngữ riêng của ngành IT nữa, mà giờ đây đã trở thành một phần của văn hóa đại chúng – Đúng vậy, đó chính là mã lỗi 404. Mã “404 Not found” đã trở nên quen thuộc và là ký hiệu quốc tế cho bất kỳ thứ gì bị thiếu, bị mất hoặc không thể tìm thấy.

Làm gì có ai muốn dính líu đến 404 với cái định nghĩa đầy tiêu cực như vậy đâu nhỉ?!

Nên cũng chẳng bất ngờ khi với phản ứng vừa buồn cười vừa khó chịu của IPTP Networks, một công ty viễn thông toàn cầu, trớ trêu thay lại vấp phải con số này ở một tình cảnh khá éo le không thể tưởng tượng được

Trước đây, khi IPTP đàm phán về việc thuê không gian cho trung tâm dữ liệu Matrix 4 tại Amsterdam với địa chỉ cụ thể là Kruislaan 411. 411 còn được biết đến như là số “hướng dẫn danh bạ” ở Bắc Mỹ nên IPTP team khá hài lòng và vui vẻ. Đơn giản thôi, bạn muốn tìm số điện thoại? Gọi ngay 411. Tìm địa chỉ nhà? Hỏi 411. Muốn có trung tâm dữ liệu đẳng cấp thế giới, được xây dựng bằng các giải pháp và công nghệ hàng đầu trong ngành? Đi thẳng đến 411 (đường Kruislaan). Quá chí lý nhỉ?!

Mọi thứ hoàn toàn tốt đẹp và ổn thoả, cho đến khi chính quyền khu vực quyết định rằng đã đến lúc phải cần thay đổi “một cái gì đấy”.

Và với sự thay đổi mới về địa chỉ, Matrix 4 hiện đang nằm tại — đoán xem? — 404 Science Park.

411 biến thành 404.

Lỗi server responded with 0 code trong pdf

Matrix 4 đi từ số “hướng dẫn danh bạ” thành con số “không thể tìm thấy”.

Rõ ràng đây là bằng chứng cho thấy khi mọi thứ thuận tiện, sẽ luôn có một điều gì đấy kì khôi xuất hiện đánh tan sự hài lòng và vui vẻ ban đầu, nhỉ? Tuy nhiên đấy chỉ là một câu chuyện đùa vui mà IPTP team vẫn hay kể lại, và đương nhiên chúng tôi luôn luôn tự tin vào khả năng cung cấp dịch vụ của mình và mang đến sự hài lòng cho quý đối tác và khách hàng. Một điểm xấu vô tình lại thành một câu chuyện cười và làm nền cho sự phát triển vững chãi trong 25 năm hoạt động vừa qua của IPTP Networks. Một địa chỉ xui xẻo nhưng lại là điểm khởi đầu cho những dịch vụ chất lượng. Cũng như lâu lâu vấp phải 404 là một cái giá nhỏ phải trả cho một nguồn meme vô tận. Một địa chỉ xấu với những dịch vụ xuất sắc – đây là cách vũ trụ vận hành cân bằng.