如何在Heroku

时间:2018-04-26 17:51:35

标签: ruby-on-rails ssl heroku

我正在尝试使用SSL证书设置自己的域名,但我无法做到正确。我是否必须将应用程序URL或添加域名时生成的DNS作为DNS?我正在使用GoDaddy,我看到很多教程说他们中的一些你必须使用* .herokuapp.com DNS和其他人说在Heroku中生成的DNS。

此外,当我在Google中查找我的应用时,它表示该证书对* .herokuapp.com无效,但我上传的证书是针对我的个人域名的!

最后,有时我收到错误NET :: ERR_CERT_COMMON_NAME_INVALID,有人可以帮帮我吗?

1 个答案:

答案 0 :(得分:1)

自动证书管理(ACM)

simplest solution甚至不要求您购买SSL证书,但您确实需要在Heroku上使用付费dyno。 7美元的爱好层工作正常。

  1. Add the custom domain to your app's domains using the CLI or web interface

    heroku domains:add www.custom-domain.com
    
  2. 运行heroku domains以查看您的Heroku DNS目标是什么(可能是your-app.herokudns.com - 请注意, <{1}}域<}

  3. 在您的DNS注册商中添加指向您的DNS目标的.herokuapp.com条记录

  4. 运行

    启用ACM
    CNAME
  5. 等待生成并启用证书

      

    在应用程序上为自定义域完全生成TLS证书大约需要45-60分钟。您可以通过运行以下命令查看为所有自定义域生成的证书的状态:

    heroku certs:auto:enable
    
         

    如果您的状态显示“DNS已验证”,则该过程尚未完成。这意味着我们已经验证了您的域名状态,并且仍在将其提交给Let's Encrypt。当它说“OK”时,该过程将完成。

  6. 恭喜!您的网站现在应该已启用ACM。

    ACM由Let's Encrypt提供支持,这是一项为网络添加HTTPS的绝佳免费服务。

    自定义证书

    也可以在Heroku using a custom TLS certificate上设置HTTPS。但ACM更容易,而且我推荐使用它。