Node.js 带有nodejs和connect的HTTPS
我目前正在使用nodejs和connect作为我的HTTP服务器。是否仍然可以使用connect激活HTTPS?我找不到关于它的任何文件。谢谢 亨利来自 HTTP和HTTPS 以前从节点的核心net.Server继承的connect.Server 使您的应用程序很难同时提供HTTP和HTTPS。 connect()的结果(以前是connect.createServer())现在是 只是一个JavaScript函数。这意味着您可以省略对的调用 app.listen(),只需将app传递给节点net.Server,如下所示:Node.js 带有nodejs和connect的HTTPS,node.js,https,connect,Node.js,Https,Connect,我目前正在使用nodejs和connect作为我的HTTP服务器。是否仍然可以使用connect激活HTTPS?我找不到关于它的任何文件。谢谢 亨利来自 HTTP和HTTPS 以前从节点的核心net.Server继承的connect.Server 使您的应用程序很难同时提供HTTP和HTTPS。 connect()的结果(以前是connect.createServer())现在是 只是一个JavaScript函数。这意味着您可以省略对的调用 app.listen(),只需将app传递给节点net
var connect = require('connect')
, http = require('http')
, https = require('https');
var app = connect()
.use(connect.logger('dev'))
.use(connect.static('public'))
.use(function(req, res){
res.end('hello world\n');
})
http.createServer(app).listen(80);
https.createServer(tlsOptions, app).listen(443);
express 3.0也是如此,因为它继承了connect 2.0,而不是创建
http
服务器,使用https
服务器进行连接:
var fs = require('fs');
var connect = require('connect')
//, http = require('http'); Use https server instead
, https = require('https');
var options = {
key: fs.readFileSync('ssl/server.key'),
cert: fs.readFileSync('ssl/server.crt'),
ca: fs.readFileSync('ssl/ca.crt')
};
var app = connect();
https.createServer(options,app).listen(3000);
请参阅
https
和tls
服务器的文档(https是tls的一个子类)。查看Connect 2.0上的这篇博文。谢谢你的帮助。