Heroku:显示隐私错误"您的连接不是私密的"

Sam*_*lue 5 google-chrome ruby-on-rails heroku ruby-on-rails-4

Your connection is not private当我尝试访问我注册的网址时,会显示隐私错误(使用Chrome)CNAME.

我开发了Rails应用程序,这是第一次使用Heroku.

虽然当我使用原始URL时没有显示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.
Run Code Online (Sandbox Code Playgroud)

www.my_app.com当我点击Proceed to www.my_app.com (unsafe)浏览器上的链接时,我可以显示.

是否可以避免显示"隐私错误"?

如果你能告诉我如何避免这个错误,将不胜感激.

mra*_*teb 7

2020 年更新答案

Heroku 现在为免费层以上的所有层提供自动证书管理,允许非常简单的设置让 https 为您的网站工作。

要设置它:

  1. 在 Heroku 中,将级别升级到业余爱好者或更高级别(每月 7 美元起)
  2. 在 CLI 中运行命令 heroku certs:auto:enable -a yourappname
  3. 在 CLI 中运行命令heroku domains。您应该获得自定义域的列表及其 DNS 目标的列表。在运行 DNS 目标上方的命令后,您应该.herokudns.com.herokuapp.com.
  4. 现在在您的 DNS(GoDaddy 或您使用的任何 DNS)中更新 DNS 以确保它指向新.herokudns.com应用程序而不是通用应用程序.herokuapp.com

在完成这些步骤后,您当然可能需要等待一段时间才能使 DNS 更改生效。但是现在您已经设置好了一切!Ta Da,您有 DNS 为您服务!

有关任何这些步骤的更多信息,请在此处查看heroku 的文章


小智 5

通过新域名加载 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 美元。有关此附加组件的更多详细信息,请从此处此处阅读

另一种选择是使用 Heroku SSL,这是 Heroku 当前提供的免费功能。似乎他们想用这个替换 SSL Endpoint。要了解如何使用 Heroku SSL 为您的域名安装 SSL,请阅读 NameCheap.com 上的这篇文章

来源:修复您的浏览器中的连接不是私人错误


Ant*_*y E 4

问题是您很可能force_ssl = true在配置中使用,但是您的服务器上没有安装有效且授权的 SSL 证书。

要修复该错误,您有两种可能性:

  • 通过禁用 SSL force_ssl = false(不推荐)
  • 购买由证书颁发机构颁发的 SSL 证书并将其安装在您的服务器上(例如 nginx 或 Apache)