如何为客户端设置Meteor WebSocket端口?

时间:2013-10-18 13:53:24

标签: javascript node.js websocket meteor port

如何设置WebSocket将监听的端口?我正在尝试在OpenShift上部署Meteor,但是他们有一个nodejs-proxy服务器,它在端口8000上侦听80,然后重定向到我的Meteor守护程序。它正在工作,因为手动创建的WebSocket对象工作正常。

我设置了ROOT_URL但没有成功。它出现在浏览器中,如下所示:

process.env.ROOT_URL = 'http://' + process.env.OPENSHIFT_APP_DNS + ':8000'

我正在使用此快速入门:https://github.com/openshift-quickstart/openshift-meteorjs-quickstart。请参阅文件meteorshim.js以供参考。

一切正常,包括长轮询。

2 个答案:

答案 0 :(得分:6)

我现在挣扎了一段时间,我尝试了不同的东西。在OpenShift中为我工作的解决方案是:

设置DDP_DEFAULT_CONNECTION_URL变量

//for http
process.env.DDP_DEFAULT_CONNECTION_URL = 'http://' + process.env.OPENSHIFT_APP_DNS + ':8000'
//for ssl
process.env.DDP_DEFAULT_CONNECTION_URL = 'https://' + process.env.OPENSHIFT_APP_DNS + ':8443'

根据this blog post

答案 1 :(得分:0)

只需使用环境变量PORT

所以我想:

process.env.PORT = 8000
process.env.ROOT_URL = 'http://' + process.env.OPENSHIFT_APP_DNS

要在不同的端口上专门设置websockets并让meteor在不同的端口上运行,我不太确定这是否可行。