Khi sử dụng Cloudflare Proxy với Vercel, bạn có thể gặp phải lỗi “err_too_many_redirects”. Đây là một thông báo lỗi thường gặp khi sử dụng Cloudflare Proxy với Vercel. Trong bài viết này, chúng ta sẽ cùng tìm hiểu cách sửa lỗi này.
Lỗi “err_too_many_redirects” là gì?
Lỗi “err_too_many_redirects” xảy ra khi bạn sử dụng Cloudflare Proxy với Vercel và bạn không thể truy cập trang web của mình. Đây là một thông báo lỗi thường gặp. Nguyên nhân gây ra lỗi này là khi cấu hình Cloudflare SSL/TLS của bạn đang để là “Flexible”. Lúc này, Cloudflare sẽ gửi các yêu cầu từ server của họ tới Vercel deployment của bạn bằng cách dùng HTTP thay vì HTTPS. Sau khi Vercel phản hồi lại yêu cầu của Cloudflare, nó sẽ chuyển tiếp phản hồi này bằng HTTPS.

Trong khi Vercel sẽ tự động nâng cấp toàn bộ yêu cầu HTTP để dùng SSL khi có một chứng chỉ hợp lệ, code 308 sẽ được gửi tới client, dẫn đến việc chuyển tiếp đến cùng một nơi.
Ví dụ thực tế:
- Cloudflare nhận yêu cầu tại https://example.com và tạo yêu cầu tới Vercel deployment của bạn tại http://example.com
- Vercel nhận yêu cầu tại http://example.com và chuyển tiếp yêu cầu này tới https://example.com với code 308
- Cloudflare lại chuyển tiếp việc điều hướng này tới người dùng. Tuy nhiên, khi người dùng đang dùng https://example.com, nó sẽ rơi vào một vòng lặp.
Giải pháp
Để giải quyết vấn đề này, bạn cần thay đổi cấu hình SSL/TLS của Cloudflare thành “Full”. Điều này sẽ đảm bảo rằng Cloudflare sẽ gửi các yêu cầu từ server của họ tới Vercel deployment của bạn bằng cách dùng HTTPS.

Chúc bạn thành công!