在Nodejs Express for HTTPS中读取证书和密钥时遇到问题

时间:2019-03-14 06:41:55

标签: node.js https certificate

我正在尝试将证书添加到我的Nodejs Express服务中,以使HTTPS正常工作。我按照以下答案开始:Enabling HTTPS on express.js

尽管我只有.cer.txt(我的密钥)文件,所以我只是手动将.txt重命名为.key。然后,我在上面的答案中更改了行:

-- HIS ANSWER:
var privateKey  = fs.readFileSync('sslcert/server.key', 'utf8');
var certificate = fs.readFileSync('sslcert/server.crt', 'utf8');

-- MY CHANGE:
var privateKey  = fs.readFileSync('server.key', 'utf8');
var certificate = fs.readFileSync('server.cer', 'utf8');

我的.cer如下:

-----BEGIN PKCS7-----
JHfw2AWawdDH...
...hd8h28HDFWA
-----END PKCS7-----

我的.key如下:

-----BEGIN NEW CERTIFICATE REQUEST-----
HDW28HD82HD2...
...82FHJD12
-----END NEW CERTIFICATE REQUEST-----

但是当我开始服务时,行var httpsServer = https.createServer(credentials, app);会引发此错误:

      c.context.setCert(cert);
                ^

Error: error:0906D06C:PEM routines:PEM_read_bio:no start line

对于此问题,我尝试了许多其他答案,但仍无法正常工作。我对证书和HTTPS知之甚少,因此任何解释都将大有帮助:)

0 个答案:

没有答案