heroku实例上的节点错误:无法验证第一个证书

时间:2016-12-13 17:41:20

标签: node.js ssl heroku

我正在尝试运行通过heroku提供的API。目前我正在使用SSL加密,我已通过设置页面中的domains and certificates面板将其添加到网站。虽然我可以使用https连接到浏览器上的站点,但是邮递员我无法使用node.js实例访问API,但收到以下错误:

{ Error: unable to verify the first certificate
   at TLSSocket.<anonymous> (_tls_wrap.js:1062:38)
   at emitNone (events.js:86:13)
   at TLSSocket.emit (events.js:185:7)
   at TLSSocket._finishInit (_tls_wrap.js:586:8)
at TLSWrap.ssl.onhandshakedone (_tls_wrap.js:416:38) code: 
'UNABLE_TO_VERIFY_LEAF_SIGNATURE' }

我已尝试使用ssl-root-cas模块,但它似乎无法在heroku实例上运行,因为它需要下载intermeidate证书并重新启动服务器。但是,重新启动heroku实例会导致ssl-root-cas丢失已下载的证书。我也无法直接从我的节点服务器提供SSL证书。我需要帮助解决这个问题,我认为这是不正确地捆绑中间证书的结果。

1 个答案:

答案 0 :(得分:1)

我发现解决此问题的最佳,最简单的方法是在heroku请求证书时使用fullkey.pem