gpt4 book ai didi

node.js - HAPI SSL 错误 :0906D06C:PEM routines:PEM_read_bio:no start line

转载 作者:太空宇宙 更新时间:2023-11-03 13:07:04 25 4
gpt4 key购买 nike

我有一个在 HTTP 上运行良好的 Hapi 服务器。我需要通过 HTTPS 完成这项工作。我有一张我们从 COMODO 购买的证书。

我的 key

 -----BEGIN PRIVATE KEY-----
MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDGyXFDz/pSzMxO
...
g7N2PgtU9nhM7eYhQmhjB+4=
-----END PRIVATE KEY-----

我的证书

-----BEGIN CERTIFICATE-----
MIIFbDCCBFSgAwIBAgIRAK3oQPHzO66FR3iLafOh2JkwDQYJKoZIhvcNAQELBQAw
...
pvWiUJabAat2O+hexjv55O4RkfQ13aIKo1Z7VeWyNQdEPaSCOFtteC4a3WelWcZ7
-----END CERTIFICATE-----

(也尝试过使用具有相同问题的组合根证书包)

编辑:证书和 key 都是 PEM 格式,而不是 DER 格式。行尾也没有问题。

我的服务器代码

var tls = {
key: fs.readFileSync('privkey.pem'),
cert: fs.readFileSync('certificate.pem')
};

var server = new Hapi.Server();

server.connection({
address: '0.0.0.0',
port: 443,
tls: tls,
routes: { cors: { origin: ['*'] }, validate: { options: { abortEarly: false } } }
});

尝试启动服务器时出现以下错误

node server.js

Error: error:0906D06C:PEM routines:PEM_read_bio:no start line
at Error (native)
at Object.createSecureContext (_tls_common.js:87:19)
at Server (_tls_wrap.js:754:25)
at new Server (https.js:24:14)
at Object.exports.createServer (https.js:44:10)
at new module.exports.internals.Connection.options (W:\project\node_modules\hapi\lib\connection.js:89:74)
at internals.Server.connection (W:\project\node_modules\hapi\lib\server.js:121:24)
at Object.<anonymous> (W:\project\server.js:98:8)
at Module._compile (module.js:398:26)
at Object.Module._extensions..js (module.js:405:10)

这是怎么回事?我该如何解决?任何帮助,将不胜感激。谢谢

最佳答案

我遇到了类似的问题,我的配置不同,因为我以字符串形式提供证书和 key (这仅是开发人员)。我收到了同样的错误,因为我从文本编辑器中线性化了我的 key ,该文本编辑器删除了新行 (\n) 字符。一旦我将这些\n 字符添加回我的字符串中,它就可以正常工作。这让我想到了您的问题....

我测试了你的 fs.readFileSync('server.key') (是的,我的 server.key 是 PEM 格式)代码使用我的证书和 key ,我注意到在没有指定编码的情况下,文件数据以字节数组的形式返回。 <Buffer 2d 2d 2d 2d ....

但是,指定编码 fs.readFileSync('server.key', 'utf-8')确实将证书数据作为人类可读的字符串返回给我。

我会尝试更新您的 readFileSync 调用以包含像“utf-8”这样的编码 - 这可能是 hapi 无法理解您的证书数据的原因。

希望这对您有所帮助!

关于node.js - HAPI SSL 错误 :0906D06C:PEM routines:PEM_read_bio:no start line,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35941076/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com