Bỏ để qua phần nội dung

Mã trạng thái 520: Ý nghĩa và cách khắc phục

  • by
  • Blog
  • Đã đọc 6 phút

Giới thiệu

Mã trạng thái HTTP giống như một tin nhắn ngắn từ máy chủ web, cho bạn biết mọi thứ diễn ra như thế nào khi nó cố gắng xử lý yêu cầu của bạn. Có thể bạn đã quen với những lỗi phổ biến như 404 Not Found hoặc 500 Internal Server Error. Nhưng bạn đã bao giờ gặp phải mã trạng thái 520 chưa? Đó là một mã thích hợp, dành riêng cho Cloudflare và có thể gây nhầm lẫn nếu bạn không biết ý nghĩa của nó hoặc cách khắc phục sự cố.

Tuy nhiên, đừng lo lắng, đến cuối bài viết này bạn sẽ trở thành chuyên gia về 520. Chúng tôi sẽ đề cập chính xác ý nghĩa của mã trạng thái 520, các nguyên nhân phổ biến nhất gây ra lỗi này và các bước có thể thực hiện được mà bạn có thể thực hiện để khắc phục và tránh lỗi 520, cho dù bạn là chủ sở hữu trang web hay đang thực hiện một số thao tác tìm kiếm trên web. Hãy đi sâu vào!

Mã trạng thái 520 là gì?

Trước hết, điều quan trọng cần lưu ý là 520 không phải là mã trạng thái HTTP chính thức mà bạn sẽ tìm thấy trong thông số kỹ thuật. Đó là mã trạng thái độc quyền được tạo bởi Cloudflare, một dịch vụ bảo mật và CDN phổ biến được nhiều trang web sử dụng. Vì vậy, bạn sẽ chỉ gặp phải tốc độ 520 trên các trang web sử dụng Cloudflare.

Trong tài liệu của họ, Cloudflare phân loại mã trạng thái 520 có nghĩa là "Lỗi không xác định". Hữu ích, phải không? Về cơ bản, điều đó có nghĩa là máy chủ web gốc đằng sau Cloudflare đã phản hồi điều gì đó không mong muốn hoặc không hợp lệ.

Bạn có thể coi Cloudflare như một người trung gian giữa khách truy cập và máy chủ web thực tế đang lưu trữ một trang web. Thông thường, Cloudflare nhận yêu cầu, chuyển nó đến máy chủ gốc, nhận phản hồi và chuyển lại cho khách truy cập. Nhưng nếu phản hồi của máy chủ gốc là bất thường hoặc thiếu thông tin bắt buộc, Cloudflare sẽ không biết phải làm gì với thông tin đó và đưa ra mã trạng thái 520 chung.

Nguyên nhân phổ biến của lỗi 520

Có một số lý do khiến bạn có thể gặp lỗi 520. Một số nguyên nhân phổ biến bao gồm:

1. Máy chủ gốc không hoạt động – Nếu máy chủ web thực sự đằng sau Cloudflare ngừng hoạt động, hết thời gian chờ hoặc không thể truy cập được, bạn có thể sẽ nhận được 520.

2. Phản hồi HTTP không hợp lệ – Máy chủ web cần trả về các phản hồi HTTP được định dạng chính xác, bao gồm dòng trạng thái, tiêu đề và nội dung. Nếu có gì đó không đúng định dạng hoặc bị thiếu, nó có thể kích hoạt 520.

3. Lỗi ứng dụng web – Nếu mã ứng dụng thực tế đang chạy trên máy chủ gốc có lỗi, ngoại lệ hoặc trường hợp đặc biệt trả về phản hồi bất thường, thì những mã đó có thể được chuyển đến người dùng dưới dạng 520.

4. Thiếu tiêu đề bắt buộc – Một số trang web yêu cầu yêu cầu bao gồm một số tiêu đề HTTP nhất định, như để xác thực, giới hạn tốc độ hoặc bảo mật. Bỏ những thứ đó ra có thể gây ra 520.

5. Yêu cầu tự động bị chặn – Nếu một trang web phát hiện các mẫu yêu cầu tự động bất thường, hệ thống bảo mật của trang web đó có thể chặn các yêu cầu đó, thường dẫn đến lỗi 520 chung để che giấu nguyên nhân thực sự.

Vì vậy, tóm lại, 520 thường có nghĩa là sự cố xảy ra với chính máy chủ web gốc hoặc yêu cầu của bạn thiếu một số thành phần bắt buộc. Đó là một lỗi mơ hồ mà có thể phải mất một thời gian tìm hiểu mới có thể xác định được nguồn gốc thực sự của nó.

Cách khắc phục và tránh lỗi 520

Bây giờ bạn đã hiểu lỗi 520 nghĩa là gì và một số nguyên nhân phổ biến, bạn thực sự có thể làm gì với lỗi đó? Câu trả lời phụ thuộc vào việc bạn là chủ sở hữu của trang web đang ném 520 hay bạn đang cố gắng loại bỏ một trang web và tránh các khối 520. Hãy xem xét một số lời khuyên cho từng trường hợp.

Dành cho chủ sở hữu trang web

Nếu bạn gặp lỗi 520 trên trang web được Cloudflare hỗ trợ, đây là một số bước bạn có thể thực hiện để gỡ lỗi và khắc phục sự cố:

Kiểm tra sức khỏe máy chủ – Trước tiên, hãy đảm bảo máy chủ gốc của bạn thực sự hoạt động và có thể truy cập được. Sử dụng các công cụ giám sát để xác minh rằng máy chủ luôn phản hồi và không bị quá tải.

Xem lại nhật ký lỗi – Kiểm tra nhật ký lỗi của máy chủ của bạn để tìm bất kỳ trường hợp ngoại lệ hoặc yêu cầu bất thường nào có thể gây ra phản hồi không đúng định dạng. Sửa mọi lỗi cơ bản.

Xác thực định dạng phản hồi – Xác minh rằng mã ứng dụng của bạn luôn trả về các phản hồi HTTP được định dạng chính xác, kèm theo trạng thái, tiêu đề và nội dung. Hãy chắc chắn rằng các trường hợp cạnh được tính đến.

Định cấu hình thời gian chờ yêu cầu – Nếu một số yêu cầu mất quá nhiều thời gian và hết thời gian, gây ra lỗi 520, hãy cân nhắc việc tăng cài đặt thời gian chờ hoặc tối ưu hóa mã chậm.

Kiểm tra các đường dẫn URL khác nhau – Xem liệu lỗi 520 chỉ xảy ra trên các trang hoặc mẫu URL cụ thể hay không. Điều đó có thể giúp cô lập mã cần sửa.

Kiểm tra các tiêu đề bị thiếu – Nếu mã của bạn yêu cầu các tiêu đề nhất định như CORS hoặc xác thực, hãy đảm bảo các yêu cầu đó được ghi lại và xử lý đúng cách.

Việc sửa lỗi 520 từ phía máy chủ thường là một quá trình loại bỏ, kiểm tra các sự cố thường gặp và tập trung vào phạm vi cũng như nguyên nhân. Lỗi 520 chung của Cloudflare không đưa ra nhiều manh mối.

Dành cho người dọn dẹp web

Nếu bạn đang cố gắng thu thập dữ liệu một trang web nhưng bị chặn bởi mã trạng thái 520, đây là một số mẹo để khắc phục chúng:

Kiểm tra các tiêu đề bị thiếu – Kiểm tra các mẫu yêu cầu thông thường của trang web và đảm bảo bạn bao gồm tất cả các tiêu đề dự kiến, như Tác nhân người dùng, Người giới thiệu, Ngôn ngữ chấp nhận, v.v.

Tránh các mẫu yêu cầu bất thường – Sắp xếp các yêu cầu và không truy cập trang web quá nhanh. Tránh thử lại nhiều lần vì thất bại. Ngẫu nhiên hóa các mẫu truy cập.

Sử dụng các công cụ tự động hóa không thể phát hiện – Trình duyệt không đầu như người điều khiển rối rất dễ bị phát hiện. Chuyển sang một công cụ không thể phát hiện như un detected-chromedriver.

Thực hiện luân chuyển proxy – Xoay địa chỉ IP yêu cầu bằng dịch vụ proxy để tránh giới hạn và chặn tốc độ. Luân phiên IP trung tâm dữ liệu hoặc IP dân cư thông qua nhà cung cấp như ScrapingBee có thể giúp tránh các lệnh cấm IP.

Xác minh URL yêu cầu – Đảm bảo các URL bạn đang yêu cầu là hợp lệ và không thay đổi. Một lỗi đánh máy có thể gây ra lỗi 520.

Tôn trọng robots.txt – Mặc dù không phải lúc nào cũng bắt buộc nhưng việc tôn trọng các quy tắc robots.txt của trang web thường có thể giúp tránh bị chặn nặng nề dẫn đến 520 giây.

Chìa khóa để tránh bị chặn 520 trong khi thu thập dữ liệu là giảm thiểu những thứ khiến mẫu yêu cầu của bạn trông khác với người dùng thông thường. Giới hạn tỷ lệ cẩn thận, tiêu đề thực tế và các công cụ không thể phát hiện là cách tốt nhất.

Kết luận

Mặc dù mã trạng thái 520 lúc đầu có vẻ giống như một lỗi mơ hồ và bí ẩn, nhưng với kiến ​​thức từ bài viết này, giờ đây bạn sẽ hiểu rõ ý nghĩa của nó và cách khắc phục nó.

Hãy nhớ rằng, 520 có nghĩa là máy chủ gốc đưa ra phản hồi không mong muốn, có thể do ngừng hoạt động, định dạng HTTP không hợp lệ, thiếu tiêu đề bảo mật hoặc chặn yêu cầu tự động. Với tư cách là chủ sở hữu trang web, hãy tập trung vào tình trạng máy chủ, xử lý phản hồi phù hợp và yêu cầu tiêu đề rõ ràng để giải quyết 520. Và với tư cách là người quét web, hãy quay số theo mẫu yêu cầu của bạn, sử dụng các công cụ và proxy không thể phát hiện được, đồng thời tôn trọng các quy tắc của trang web. Với một số phân tích và lặp lại, những lỗi 520 phiền phức đó sẽ trở thành quá khứ.

Tham gia vào cuộc đối thoại

Chúng tôi sẽ không công khai email của bạn. Các ô đánh dấu * là bắt buộc *