我有一个带有免费帐户的Heroku应用程序。 我在Cloudflare也有一个免费帐户。
我正在尝试使用完整SSL连接将它们连接起来。 在cloudflare中,我看到以下状态:
我认为问题在于Heroku中的设置,但我在网上找不到太多信息......
有什么建议吗?
答案 0 :(得分:6)
使用应用程序URL( appname.herokuapp.com )作为 CNAME值,而不是Heroku生成的域。
答案 1 :(得分:0)
您是否尝试使用SSL直接连接到主机?
也许尝试运行ssl labs post来查看支持哪些密码等。
我想知道主机的cloudflare代理是否支持服务器名称指示(SNI),因为我认为在主机端(Heroku)你没有专用的IP。
答案 2 :(得分:0)
在Cloudflare的Crypto
的{{1}}设置中,将值从SSL
更改为Full SSL
答案 3 :(得分:0)
这些天你必须遵循这个文件:https://support.cloudflare.com/hc/en-us/articles/205893698-Configure-Cloudflare-and-Heroku-over-HTTPS
我遇到了同样的事情,最近刚刚将 cloudflare 的 SSL 设置为 heroku。这是我必须做的。
在heroku中添加您的域,对于这个例子,我的域是heroku中的test.com,每个域都会为您使用的域提供一些随机的herokudns域值。您将需要添加 www 和 @ 域。因此,在 heroku 中,您应该看到 www.test.com 和 test.com,并且每个都对应于 herokus herokudns 域之一。
将 CNAMES 添加到 cloudflare 并使用您提供的 herokudns 域
CNAME www heroku-domain-given1
CNAME @ heroku-domain-given2
在 cloudflare 中创建原始证书 - 在其 SSL 设置下将它们上传到 heroku。确保您没有选择启用 ACM,而是选择上传手动证书设置。这就是在 cloudflare 和 heroku 之间验证 SSL 握手的方式。参考:Workaround for Heroku no longer supporting SSL behind Cloudflare ("Strict TLS in CDN not supported")?