Heroku SSL错误:密钥与PEM证书不匹配。

3
我正在尝试按照Heroku在这里提供的指示生成自签名证书。这将创建server.key和server.crt两个文件。
然后,我尝试使用以下命令将它们添加到heroku中:heroku ssl:add server.crt server.key,但是我遇到了如下错误:
域名未找到。请确保mycorrectdomain.heroku.com域名已经被添加到你的Heroku应用程序中 / 密钥不符合PEM证书
以下是server.crt文件的内容:
-----BEGIN CERTIFICATE-----
MIICvTCCAiYCCQDyHGnBdtovbzANBgkqhkiG9w0BAQUFADCBojELMAkGA1UEBhMC
VVMxCzAJBgNVBAgMAkNBMRIwEAYDVQQHDAlQYWxvIEFsdG8xEzARBgNVBAoMClR1
dG9yQ2xvdWQxETAPBgNVBAsMCFNvZnR3YXJlMSMwIQYDVQQDDBp0ZXN0LXR1dG9y
Y2xvdWQuaGVyb2t1LmNvbTElMCMGCSqGSIb3DQEJARYWYmxhaXJAbXl0dXRvcmNs
b3VkLmNvbTAeFw0xMTA4MDMxNzQ4NDdaFw0xMjA4MDIxNzQ4NDdaMIGiMQswCQYD
VQQGEwJVUzELMAkGA1UECAwCQ0ExEjAQBgNVBAcMCVBhbG8gQWx0bzETMBEGA1UE
CgwKVHV0b3JDbG91ZDERMA8GA1UECwwIU29mdHdhcmUxIzAhBgNVBAMMGnRlc3Qt
dHV0b3JjbG91ZC5oZXJva3UuY29tMSUwIwYJKoZIhvcNAQkBFhZibGFpckBteXR1
dG9yY2xvdWQuY29tMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCqWEjXRDo0
CBzoIqnpzPN6Ussf476JDX+9uCkpaSyR6Oxarjpc55lw+Mnb9UNiBWPS6JJ/Hq2c
CgkGD9uu11OXRCRvsZeyJjd2YT1B+XZsXrKZVj2C2dj1r6DXzAV2G5EwWJDklaH3
x1uA+muPt7NZ4Dz2WNv9FMyicTTCdMhWlwIDAQABMA0GCSqGSIb3DQEBBQUAA4GB
AJYAgjiHyUxyeFRR2nJ3CLanjNtkzVz+Dk7pdu/p0P35YpYhE95q76xgcOFasWe2
+pUwxTjtQvhc0BRHjohSjiF8+ZFLRfsPq9kmh55AFzDj7V8dzUek4yVyZRtcIdNQ
Gx8I5g8vJClLnHbYQlaCupVIxVZqnp7SKeeshduCsJ/8
-----END CERTIFICATE-----

有什么想法吗?

2个回答

6

如果其他人也遇到了这个错误 - 我在为我的应用程序设置测试主机名SSL证书时也遇到了同样的错误。

答案是我没有首先添加证书所属的域名 - 在Heroku SSL文档中没有明确说明。因此,在添加证书之前,请执行以下操作:

heroku domains:add secure.mydomain.com

然后您可以添加证书:

heroku ssl:add ssl.crt ssl.key

3

你是否在Heroku应用程序设置中添加了SSL插件

此外,你不应该在线发布私钥,因为它应该是...嗯...私有的。

我建议你为你的应用程序生成一个新的密钥对。

编辑:

你提到你启用了piggyback SSL,在这种情况下,你不需要生成自己的密钥。请参见this:

对于Piggyback SSL,不需要特定于应用程序的SSL证书。所有应用程序都使用*.heroku.com通配符SSL证书。你可以通过访问https://heroku.com/并在浏览器中点击锁图标来查看有关此证书的信息。


是的,piggyback SSL 已经被添加到我的应用程序中了。有什么想法是什么原因导致这个问题的吗? - user531065
好的,这对我尝试做的事情实际上会起作用,所以谢谢。不过我仍然很好奇,为什么我的自签名证书不起作用?这是一个附带效应还是实际证书存在问题? - user531065
如果您不支付通配符域SSL选项的费用,则无法使用自己的证书。这基本上意味着您不能使用 https://yourowndomain.com,而是必须从 https://appname.heroku.com 访问安全站点。 - ryanprayogo
另外,我强烈建议您在解决问题后接受答案。 - ryanprayogo

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接