with tls nodejs node node.js express ssl-certificate

node.js - nodejs - tls with node



¿Cómo configuro un certificado SSL para un servidor express.js? (2)

Consulte los documentos Express , así como los documentos de nodo para https.createServer (que es lo que Express recomienda usar):

var privateKey = fs.readFileSync( ''privatekey.pem'' ); var certificate = fs.readFileSync( ''certificate.pem'' ); https.createServer({ key: privateKey, cert: certificate }, app).listen(port);

Otras opciones para createServer están en: http://nodejs.org/api/tls.html#tls_tls_createserver_options_secureconnectionlistener

Antes, en una versión anterior de Express, podía hacer esto:

express.createServer({key:''keyFile'', cert:''certFile''});

Sin embargo, en las versiones más nuevas de Express esto ya no funciona:

var app = express();

¿Debo llamar a app.use() para establecer los certs? ¿Si es así, cómo?


Logré que SSL funcionara con el siguiente código repetitivo:

var fs = require(''fs''), http = require(''http''), https = require(''https''), express = require(''express''); var port = 8000; var options = { key: fs.readFileSync(''./ssl/privatekey.pem''), cert: fs.readFileSync(''./ssl/certificate.pem''), }; var app = express(); var server = https.createServer(options, app).listen(port, function(){ console.log("Express server listening on port " + port); }); app.get(''/'', function (req, res) { res.writeHead(200); res.end("hello world/n"); });