当我尝试访问我注册为Your connection is not private
的网址时,会显示隐私错误CNAME
(使用Chrome)。
我开发了Rails应用程序,这是第一次使用Heroku。
虽然当我使用原始网址(例如https://floating-fortress-99999.herokuapp.com/
)时未显示错误,但当我使用www.my_app.com
时,会显示错误。
浏览器上的所有错误消息如下:
Your connection is not private
Attackers might be trying to steal your information from www.my_app.com (for example, passwords, messages, or credit cards).
NET::ERR_CERT_COMMON_NAME_INVALID
This server could not prove that it is www.my_app.com; its security certificate is from *.herokuapp.com. This may be caused by a misconfiguration or an attacker intercepting your connection.
当我点击浏览器上的链接www.my_app.com
时,我可以显示Proceed to www.my_app.com (unsafe)
。
是否可以避免显示“隐私错误”?
如果您能告诉我如何避免此错误,将不胜感激。
答案 0 :(得分:4)
2020年更新的答案
Heroku现在对免费层之上的所有层都具有自动证书管理功能,这使安装https的网站变得非常容易。
要进行设置:
heroku certs:auto:enable -a yourappname
heroku domains
中。您应该获得自定义域的列表及其DNS目标的列表。在DNS目标上方运行命令后,您得到的应该以{{1}}而不是.herokudns.com
结尾。.herokuapp.com
应用而不是通用的.herokudns.com
当然,在完成这些步骤之后,您可能必须等待一段时间才能使DNS更改生效。但是,现在您已经完成所有设置! Ta Da,您的DNS正在为您服务!
有关上述任何步骤的详细信息,请检查heroku's article here
答案 1 :(得分:4)
通过新域名加载Heroku应用程序时,出现“您的连接不是私有的”错误,因为现有的SSL证书对此无效。
从错误消息中可以看到:
此服务器无法证明它是www.my_app.com;其安全证书来自* .herokuapp.com。
仅对* .herokuapp.com域名有效,在这种情况下,它可以是your-app-name.herokuapp.com。当您创建新的CNAME并使用该域名而不是your-app-name.herokuapp.com时,现有的SSL证书无法对其进行验证,并向您显示此错误。
要暂时绕过此SSL错误,您可以在Google Chrome浏览器的地址栏中输入chrome:// flags以访问高级设置,找到“允许从本地主机加载的资源使用无效证书”并启用它。这样,您可以暂时(仅)在浏览器上关闭此警告。
永久解决此问题的解决方案是为您的域获取新的SSL。您可以使用Heroku的SSL Endpoint插件将私有SSL与您的域名一起使用。这个附加组件每月向您收取$ 20。有关此附加组件的更多详细信息,read it from here或here。
另一种选择是使用Heroku SSL,这是Heroku当前提供的一项免费功能。看来他们想用这个代替SSL Endpoint。要了解如何使用Heroku SSL为您的域名安装SSL,请read this article from NameCheap.com。
答案 2 :(得分:3)
问题是您最有可能在配置中使用force_ssl = true
,但是您的服务器上没有安装有效且经过授权的SSL证书。
要修复错误,您有两种可能性:
force_ssl = false
(不推荐)答案 3 :(得分:1)
对于可能遇到此问题的任何人 -
我曾在一家使用 cisco anyconnect 的公司工作,其中还包括 Umbrella DNS 保护。
检查 url 的是系统范围 (win 10) 服务,如果(无论出于何种原因)认为它是危险的,它会显示 SSL 错误。
我刚刚卸载了该应用,因为我不再需要它了。
答案 4 :(得分:-1)
对我来说,我只需要输入 https://sitename.herokuapp.com 而不是 heroku.com