我目前正在使用nodejs和connect作为我的HTTP服务器。反正用连接激活HTTPS了吗?我找不到任何关于它的文档。感谢。
亨利
答案 0 :(得分:13)
不是创建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);
答案 1 :(得分:1)
来自http://tjholowaychuk.com/post/18418627138/connect-2-0
HTTP和HTTPS
以前connect.Server继承自Node的核心net.Server,这个 难以为您的应用程序提供HTTP和HTTPS。 现在是connect()(以前的connect.createServer())的结果 只是一个JavaScript函数。这意味着您可以省略对此的调用 app.listen(),只需将app传递给Node net.Server,如下所示:
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