2017-09-05 78 views
0

我已经建立了我的server.js文件是这样的:无法与快速结点设置SSL

var sslOptions = { 
    key: fs.readFileSync('./server2.crt'), 
    pfx: fs.readFileSync('./csr.pem'), 
}; 

var server = https.createServer(sslOptions, app).listen(port, function(){ 
    console.log("Express server listening on port " + port); 
}); 

的证书和密钥是自签名的使用:

openssl x509 -req -days 365 -in csr.pem -signkey key.pem -out server2.crt 
openssl req -newkey rsa:2048 -new -nodes -keyout key.pem -out csr.pem 

什么并不重要我这样做,我不断收到此错误:

Error: error:0906D06C:PEM routines:PEM_read_bio:no start line 
    at Object.createSecureContext (_tls_common.js:85:17) 
    at Server (_tls_wrap.js:776:25) 
    at new Server (https.js:27:14) 
    at Object.createServer (https.js:48:10) 

我看着其他SO没有工作的答案。

回答

0

Your sslOptions look incorrect。请使用钥匙和证书:

key: fs.readFileSync("./key.pem"), 
cert: fs.readFileSync("./server2.crt")