我在OpenShift中设置了一个node.js 0.10档,我部署了一个基于peerjs-server的简单服务器。我希望这个服务器所做的就是充当信令服务器来传递连接到我的应用程序的对等体之间的连接信息,从那时起,它们使用WebRTC进行对等通信。当指向演示“PeerJS Cloud”信令服务器时,一切正常,但在尝试使用我自己的服务器设置时,我会继续返回503状态代码。
以下是我使用的服务器创建代码:
var host = process.env.OPENSHIFT_NODEJS_IP;
var port = process.env.OPENSHIFT_NODEJS_PORT || 8080;
var server = new PeerServer({ port: port, host: host});
注意:我已经将主机添加到peerjs-server,所以我可以使用OpenShift的IP,不确定这是否有必要,但如果没有这个也不行。
服务器peerjs-server使用的是解析。这是服务器创建和监听代码:
this._app = restify.createServer(this._options.ssl);
/* A lot of set up code that I have not changed from peerjs-server */
this._app.listen(this._options.port, this._options.host);
this._options.port和this._options.host是前一代码段中定义的那些,我没有使用SSL,因此没有传递任何内容。
将此代码部署到OpenShift时,我没有错误,但是当在端口80或8000(打开的外部端口)上访问该站点时,我得到了503。我也检查了rhc tail,这就是我得到的: Screenshot(无法发布图片,因为我没有名声......)。不确定究竟是什么意思。
非常感谢任何帮助,如果需要更多信息,我可以添加更多信息,但不确定重要信息是什么。
更新:这是一个使用1-3个小齿轮的缩放应用程序。
答案 0 :(得分:1)
来自https://github.com/peers/peerjs-server/blob/master/lib/server.js:
// Listen on user-specified port and IP address.
if (this._options.ip) {
this._app.listen(this._options.port, this._options.ip);
} else {
this._app.listen(this._options.port);
}
所以,使用' ip'而不是主持人#39;为我工作。