Caddy 与 Cloudflare 配置陷阱:HTTPS 重定向循环
在使用 Caddy 搭建网站并启用 Cloudflare CDN 时,遇到了一个奇怪的问题——浏览器提示 “Too many redirects”。
问题所在 Caddy + Cloudflare Flexible SSL 会发生什么?
当 Cloudflare 向源服务器发送请求时(Flexible 模式),它发的是 HTTP 请求,而 Caddy 会默认重定向到 HTTPS(因为它认为你要安全地访问站点)。
这就造成了一个死循环:
- 用户访问 https://example.com。
- Cloudflare 接收请求,按 Flexible 设置,用 HTTP 访问你的源服务器。
- Caddy 接收到 HTTP 请求,自动将其重定向到 HTTPS。
- Cloudflare 接收到重定向,再次使用 HTTP 请求访问源服务器。
- Caddy 继续重定向…… 循环往复。

正确做法
将 Cloudflare 的 SSL 模式设置为 完全(Full) 或 Full (Strict)。
这将保证 Cloudflare 与 Caddy 之间的通信也是通过 HTTPS,彻底解决重定向循环问题。