Trong hệ sinh thái web hiện đại, Cloudflare đóng vai trò quan trọng trong việc bảo vệ và tối ưu hóa hệ thống mạng. Hàng triệu website và ứng dụng đang sử dụng Cloudflare để xử lý CDN, bảo mật, chống DDoS và quản lý traffic. Đối với nhiều doanh nghiệp công nghệ và các đơn vị triển khai hạ tầng số như LionTech – đối tác (partner) của Cloudflare trong lĩnh vực giải pháp hạ tầng và tối ưu hệ thống web, nền tảng này đóng vai trò quan trọng trong việc xây dựng các hệ thống có khả năng mở rộng, bảo mật cao và vận hành ổn định. Tuy nhiên, khi xảy ra sự cố, đặc biệt là các lỗi 1xxx của Cloudflare, việc xử lý lỗi một cách tự động trong hệ thống backend hoặc API client trước đây gặp không ít khó khăn.
Ngày 11/03/2026, Cloudflare đã công bố một thay đổi quan trọng: các lỗi 1xxx giờ đây có thể trả về JSON theo chuẩn RFC 9457 (Problem Details for HTTP APIs). Điều này giúp các ứng dụng, API client, hệ thống monitoring hoặc automation dễ dàng phân tích và xử lý lỗi hơn thay vì phải đọc HTML như trước đây.
Bài viết này sẽ giúp bạn hiểu rõ:
- Lỗi 1xxx của Cloudflare là gì
- Hạn chế trước đây khi Cloudflare trả lỗi HTML
- Cập nhật mới với JSON responses theo chuẩn RFC 9457
- Cấu trúc JSON response
- Cách request JSON từ Cloudflare
- Ví dụ kiểm tra bằng curl
- Những thay đổi có thể gây breaking changes
- Ứng dụng thực tế trong hệ thống backend và automation

Cloudflare 1xxx error JSON response theo chuẩn RFC 9457 cho API error handling
1. Giới thiệu về lỗi 1xxx của Cloudflare
Cloudflare sử dụng nhiều loại mã lỗi khác nhau để biểu thị các vấn đề xảy ra trong quá trình xử lý request. Trong đó, nhóm lỗi 1xxx là các lỗi đặc thù do hệ thống Cloudflare tạo ra.
Một số lỗi phổ biến thuộc nhóm này bao gồm:
- Error 1000 – DNS points to prohibited IP
- Error 1001 – DNS resolution error
- Error 1015 – Rate limited
- Error 1020 – Access denied (Firewall rules)
Các lỗi này thường xuất hiện khi:
- Website bị giới hạn truy cập
- Firewall rule chặn request
- DNS cấu hình sai
- Traffic vượt ngưỡng rate limit
Trước đây, khi lỗi xảy ra, Cloudflare thường trả về một trang HTML hiển thị lỗi cho người dùng. Điều này phù hợp với trình duyệt, nhưng lại gây khó khăn cho các hệ thống backend hoặc API client.
2. Vấn đề trước đây khi Cloudflare trả lỗi HTML
Trước khi có cập nhật mới, khi một request gặp lỗi Cloudflare, response thường là một trang HTML đầy đủ.
Ví dụ khi gặp lỗi rate limit (1015), response có dạng:
<html>
<head>
<title>1015 Rate Limited</title>
</head>
<body>
You are being rate limited.
</body>
</html>
Đối với người dùng truy cập bằng trình duyệt, đây không phải vấn đề lớn. Tuy nhiên, đối với các hệ thống như:
- API client
- backend service
- monitoring system
- automation script
- microservices
việc xử lý lỗi trở nên phức tạp.
Các developer thường phải:
- Parse HTML
- Extract error code
- Detect pattern trong text
- Viết logic xử lý riêng cho từng lỗi
Điều này gây ra nhiều vấn đề:
- Không ổn định: HTML có thể thay đổi theo thời gian khiến parser bị lỗi.
- Khó tự động hóa: Automation script khó xác định chính xác loại lỗi.
- Không theo chuẩn API: HTML không phải format chuẩn cho giao tiếp API.
Chính vì vậy, cộng đồng developer từ lâu đã mong muốn Cloudflare cung cấp JSON error responses.
3. Cập nhật mới: JSON responses theo RFC 9457
Theo thông báo trong changelog của Cloudflare, các lỗi 1xxx giờ đây có thể trả về JSON nếu client gửi request với header phù hợp.
JSON response này tuân theo chuẩn RFC 9457 – Problem Details for HTTP APIs.
RFC 9457 là tiêu chuẩn giúp các API trả về lỗi theo một cấu trúc thống nhất. Thay vì trả về HTML hoặc text, API sẽ trả về JSON chứa thông tin rõ ràng về lỗi.
Ví dụ response theo chuẩn RFC 9457:
{
"type": "https://developers.cloudflare.com/errors/1015",
"status": 429,
"title": "Rate limited",
"detail": "You are being rate limited.",
"instance": "cf-ray-id"
}
Nhờ đó, các ứng dụng có thể:
- đọc lỗi trực tiếp
- xử lý logic retry
- log lỗi
- hiển thị thông báo phù hợp
mà không cần parse HTML nữa.
4. Cấu trúc JSON response
JSON response mới của Cloudflare tuân theo cấu trúc chuẩn của RFC 9457. Các trường chính bao gồm:
Type: URL mô tả loại lỗi.
Ví dụ:
"type": "https://developers.cloudflare.com/errors/1015"
Developer có thể truy cập link này để xem chi tiết lỗi.
status:HTTP status code.
Ví dụ:
"status": 429
Status code giúp client hiểu lỗi thuộc loại nào.
Title: Tên lỗi ngắn gọn.
Ví dụ:
"title": "Rate limited"
Detail: Mô tả chi tiết lỗi.
Ví dụ:
"detail": "You are being rate limited."
Trường này thay thế cho field cũ trong response trước đây.
Instance: Identifier cho request gây ra lỗi.
Trong Cloudflare, đây thường là Ray ID, giúp debug request trong log.
Ví dụ:
"instance": "6f23a8f1c8b34a21"
Ray ID rất quan trọng khi cần kiểm tra log hoặc làm việc với Cloudflare support.
5. Cách request JSON bằng header Accept
Để nhận JSON error response từ Cloudflare, client cần gửi header Accept phù hợp.
Ví dụ:
Accept: application/json
hoặc
Accept: application/problem+json
Cloudflare sẽ thực hiện content negotiation để xác định format response.
Các trường hợp phổ biến:
Header Accept | Response |
application/json | JSON |
application/problem+json | JSON (RFC 9457) |
text/markdown | Markdown |
/ | HTML |
Nếu request không chỉ định JSON, Cloudflare vẫn sẽ trả HTML như trước.
6. Ví dụ curl test lỗi Cloudflare
Developer có thể thử nghiệm JSON response bằng curl.
Ví dụ:
curl -H "Accept: application/json" \
Kết quả trả về:
{
"type": "https://developers.cloudflare.com/errors/1015",
"status": 429,
"title": "Rate limited",
"detail": "You are being rate limited.",
"instance": "abc123xyz"
}
Nếu sử dụng jq, developer có thể dễ dàng đọc dữ liệu:
curl -H "Accept: application/json" \
Điều này rất hữu ích khi debug hoặc kiểm tra behavior của hệ thống.
7. Những breaking changes cần lưu ý
Cloudflare cũng thông báo một số thay đổi có thể gây breaking changes với các hệ thống cũ.
Cụ thể:
Field cũ | Field mới |
http_status | status |
what_happened | detail |
Nếu hệ thống trước đây đang parse các field cũ, developer cần cập nhật code để tránh lỗi. Ngoài ra, những script trước đây dùng logic parse HTML cũng nên được refactor để xử lý JSON.
8. Ứng dụng trong monitoring, API client và automation
Cập nhật này mang lại nhiều lợi ích cho hệ thống backend và developer.
Monitoring systems
Các hệ thống monitoring như:
- Prometheus
- Datadog
- New Relic
- Grafana
có thể đọc JSON error để xác định nguyên nhân lỗi chính xác hơn.
API clients
API client có thể:
- detect lỗi rate limit
- implement retry strategy
- handle access denied
Ví dụ logic:
if status == 429:
retry_after_delay()
Automation scripts
Automation scripts dùng để crawl, kiểm tra uptime hoặc test hệ thống cũng có thể đọc lỗi dễ dàng hơn.
Ví dụ:
- detect firewall block
- detect rate limit
- trigger alert
Microservices architecture
Trong hệ thống microservices, việc trả lỗi theo chuẩn JSON giúp:
- logging rõ ràng
- debugging nhanh
- integration dễ dàng
Kết luận
Việc Cloudflare hỗ trợ JSON responses cho lỗi 1xxx theo chuẩn RFC 9457 là một bước tiến quan trọng trong việc chuẩn hóa cách xử lý lỗi cho các hệ thống API và dịch vụ web hiện đại. Thay vì phải parse HTML như trước đây, developer giờ có thể nhận được dữ liệu lỗi dưới dạng JSON có cấu trúc rõ ràng, giúp việc xử lý, logging và automation trở nên dễ dàng và chính xác hơn.
Cập nhật này đặc biệt hữu ích cho các hệ thống backend, API client, monitoring platform và các kiến trúc microservices, nơi việc tự động phát hiện và xử lý lỗi đóng vai trò quan trọng trong việc đảm bảo tính ổn định của hệ thống.
Tuy nhiên, các developer cũng cần lưu ý những breaking changes trong cấu trúc response để cập nhật lại parser hoặc logic xử lý lỗi nếu hệ thống đang phụ thuộc vào các field cũ.
Tại LionTech, chúng tôi luôn theo sát các cập nhật mới từ các nền tảng công nghệ lớn như Cloudflare, Google Cloud và AWS để đảm bảo hệ thống của khách hàng được triển khai theo các tiêu chuẩn hiện đại nhất. Việc áp dụng các chuẩn API mới như RFC 9457 giúp tối ưu khả năng quan sát hệ thống (observability), tăng độ ổn định của dịch vụ và cải thiện khả năng tự động hóa trong vận hành.
Nếu doanh nghiệp của bạn đang xây dựng hệ thống API, nền tảng SaaS hoặc các dịch vụ web quy mô lớn, việc chuẩn hóa cơ chế xử lý lỗi và monitoring là yếu tố quan trọng để đảm bảo hệ thống hoạt động ổn định và dễ mở rộng trong tương lai.
LionTech cung cấp các giải pháp tư vấn kiến trúc hệ thống, triển khai Cloud, API gateway và observability platform, giúp doanh nghiệp xây dựng hạ tầng công nghệ vững chắc, tối ưu hiệu suất và sẵn sàng cho các mô hình vận hành hiện đại.
Liên hệ với LionTech tại:
- SDT: (+84) 098 269 1932
- Email: support@liontech.vn
- Website: liontech.vn
- Fanpage: facebook.com/liontech.vn
- Linked In: company/liontech-vn
Nguồn: Cloudflare Developers
Câu hỏi thường gặp
GA360 có thể lưu trữ dữ liệu lên đến 50 tháng, trong khi GA4 miễn phí chỉ lưu tối đa 14 tháng.
