大家好,
我在 community.website.com 上设置了 Discourse,在 website.com 上设置了 WordPress。我使用 Caddy 作为反向代理,并由 Let’s Encrypt 管理 SSL。在经历了一些初期的困难后,我让一切都顺利运行起来,包括 SSL 和重定向。在无数次尝试其他反向代理方法失败后,我选择了这个设置。对我来说,根本问题是我之前没有 Docker 或 Discourse 的经验。
我也明白缓存和 Discourse 可能会出现问题,所以也许越少越好,或者有一些规则可以避免问题。
当前设置:
- Discourse: 通过 Docker 在 community.website.com 上运行。
- WordPress: 安装在 website.com 上。
- Caddy: 处理反向代理和 Let’s Encrypt SSL。
- Cloudflare: 配置 DNS、防火墙和 CDN。
挑战:
当使用不代理的 Cloudflare DNS(仅用于 DNS)时,一切都运行正常——Caddy 管理 Let’s Encrypt SSL,并且没有问题。
然而,当切换到启用代理的 Cloudflare DNS 时,连接会失败,并出现 Cloudflare 的“网站已关闭”错误。我已经更新了我的 Caddyfile,为根域和子域都使用 http://,并在 Cloudflare 中尝试了多种 SSL 配置(Flexible、Full 和 Full Strict),但都未能建立连接。
问题是如何配置才能让 Caddy、带 SSL 的 Cloudflare 与 Discourse 协同工作?
任何建议都将不胜感激!