如何为express.js服务器设置SSL证书?
之前,在一个旧版本的快递中,我可以这样做:
express.createServer({key:'keyFile', cert:'certFile'});
但是,在更新的版本中,这不再起作用:
var app = express();
我应该调用app.use()
来设置证书吗? 如果这样怎么样?
请参阅Express文档以及https.createServer的Node文档 (这是特别推荐使用的):
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
我能够通过以下样板代码获得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"); });
- 使用Express 4.0上传文件:req.files未定义
- 如何知道在node.js中请求是http还是https
- 如何使用mongoose诺言 – mongo
- 在EJS模板(使用ExpressJS)中检查variables的存在的正确方法是什么?
- IIS,Node.js和Web应用程序与IISNode没有configuration正确的虚拟目录
- 如何在Node.js的Express.js中获取GET(查询string)variables?
- 如何更改使用车把快速默认布局?
- TypeError:Router.use()需要中间件function,但得到一个对象
- 在sails.js中创buildconfigurationvariables?