我想知道这是我们自己的问题还是Heroku的问题。我安装了SSL附加组件($20/月),并通过我的大学IT部门获得了SSL证书(更改了一些详细信息的名称,但您可以理解)。我按照此处列出的步骤进行操作:
https://devcenter.heroku.com/articles/ssl-endpoint
在Chrome中,我收到一个错误提示:“您的连接不是私密连接”NET::ERR_CERT_COMMON_NAME_INVALID。然后它还说:“该服务器无法证明它是mydomain.edu;其安全证书来自*.herokuapp.com。这可能是由于配置错误或攻击者拦截了您的连接引起的。”
我已经检查了我的CSR,它将mydomain.edu作为CN,我已经检查了来自我的学校IT的电子邮件,该电子邮件显示mydomain.edu。
当我检查heroku certs命令时,我得到以下结果:
我已经检查了我的CSR,它将mydomain.edu作为CN,我已经检查了来自我的学校IT的电子邮件,该电子邮件显示mydomain.edu。
当我检查heroku certs命令时,我得到以下结果:
$ heroku certs
Endpoint Common Name(s) Expires Trusted
------------------------- -------------------------- -------------------- -------
tokyo-13550.herokussl.com mydomain.edu 2019-04-14 23:59 UTC True
我唯一看到的问题就是CNAME记录,我相信当我添加SSL时端点已经改变了:
$ heroku certs:add cert.cer private.key --app myapp
Resolving trust chain... done
Adding SSL Endpoint to myapp... done
myapp now served by tokyo-13550.herokussl.com
Certificate details:
Common Name(s): mydomain.edu
Expires At: 2019-04-14 23:59 UTC
Issuer: /C=US/ST=MI/L=Ann Arbor/O=Internet2/OU=InCommon/CN=InCommon RSA Server CA
Starts At: 2016-04-14 00:00 UTC
Subject: /C=US/postalCode=myzip/ST=mystate/L=mycity/street=myaddress/O=myorginization/OU=Certificate Management/CN=mydomain.edu
SSL certificate is verified by a root authority.
起初我在没有SSL的情况下运行应用程序,我们设置了一个CNAME记录,其终端节点为:
us-east-1-a.route.herokuapp.com
我认为如果我们将CNAME记录从美国更新到东京,则SSL问题将得到解决。我的IT部门认为我安装证书时出了问题,或者它正在使用旧证书,因为它显示*.herokuapp.com而不是引用mydomain.edu。