以前,在较老版本的express中,我可以这样做:
express.createServer({key:'keyFile', cert:'certFile'});
然而,在较新版本的express中,这不再起作用:
var app = express();
我应该调用app.use()
来设置证书吗?如果是这样的话,是怎么做的?
发布于 2012-08-04 12:31:50
请参阅the Express docs和Node docs for https.createServer (这是express推荐使用的):
var privateKey = fs.readFileSync( 'privatekey.pem' );
var certificate = fs.readFileSync( 'certificate.pem' );
https.createServer({
key: privateKey,
cert: certificate
}, app).listen(port);
有关createServer的其他选项,请访问:http://nodejs.org/api/tls.html#tls_tls_createserver_options_secureconnectionlistener
发布于 2012-08-23 01:35:45
我能够使用下面的样板代码让SSL工作:
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");
});
https://stackoverflow.com/questions/11804202
复制相似问题