user666
user666

Reputation: 2013

NodeJs enabling SSL

I already had a functioning application on HTTP using nodeJs language. I would like to start using HTTPS instead. My current implementation is:

var fs = require('fs');
var https = require('https');
var certificate = fs.readFileSync('filename.pfx', 'utf8');
var credentials = {key: 'password', pfx: certificate};
dotenv.config({ silent: true });

const app = express();
app.use(/^\/(?!ready).*/);

var httpsServer = https.createServer(credentials, app);
httpsServer.listen(PORT, logger.info(`Server listening on port: ${PORT}`));

The error i am facing is:

_tls_common.js:144
c.context.setKey(key, passphrase);
            ^

Error: error:0906D06C:PEM routines:PEM_read_bio:no start line
at Object.createSecureContext (_tls_common.js:144:17)
at Server (_tls_wrap.js:867:27)
at new Server (https.js:62:14)

Can anyone help on this?

Upvotes: 0

Views: 5620

Answers (1)

user666
user666

Reputation: 2013

Solved using:

 var options = {
   pfx: fs.readFileSync([filename]),
   passphrase: [password]
 };     

  [...app definition...]
 var httpsServer = https.createServer(options, app);

  httpsServer.listen(PORT, logger.info(`Server listening on port: ${PORT}`));

Upvotes: 3

Related Questions