如何设置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以供参考。
一切正常,包括长轮询。
答案 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'
答案 1 :(得分:0)
只需使用环境变量PORT
所以我想:
process.env.PORT = 8000
process.env.ROOT_URL = 'http://' + process.env.OPENSHIFT_APP_DNS
要在不同的端口上专门设置websockets并让meteor在不同的端口上运行,我不太确定这是否可行。