使用https with express io

时间:2016-04-15 06:42:23

标签: javascript node.js express https socket.io

所以我是新手来表达和io,但我有一个服务器运行良好的webRTC但现在webRTC中有一个弃用的方法只运行在https所以我试图创建一个https服务器,但它启动,然后立即退出。我无法弄清楚出了什么问题,我没有得到任何错误。我也使用aws ec2来运行快速io服务器。也许有人可以发现我的语法/实现中哪些地方出错了。

请注意我过去半小时一直在谷歌上搜索无法弄清楚

以下是代码:

var connect = require('connect');
    var https = require('https');

    var fs = require('fs');
var express = require('express.io');
var app = express();
//app.http().io();
var PORT = 443;

var options = {
 key: fs.readFileSync('../server.key'),
 cert: fs.readFileSync('../server.crt')
};
app.https(options).io();
//var app = https.createServer(options, app1);

console.log('server started on port ' + PORT);

app.use(express.static(__dirname + '/public'));

app.get('/', function(req, res){
    res.render('index.ejs');
});

app.listen(PORT);

app.io.route('ready', function(req) {
      req.io.join(req.data.chat_room);
      req.io.join(req.data.signal_room);
      app.io.room(req.data).broadcast('announce', {
            message: 'New client in the ' + req.data + ' room.'
    })
})

更新

我对此表示赏心悦目,因为我希望有人能够为我提供有关设置服务器进行生产的完整答案。

1 个答案:

答案 0 :(得分:3)

您需要在实例的安全组中为端口443添加规则。

http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/authorizing-access-to-an-instance.html可能会有所帮助。