Demeteorizer编译meteor app并导致WebSocket连接错误?

时间:2014-03-16 11:23:21

标签: javascript nginx websocket meteor

我在nginx后面运行节点。在本地测试服务器上我的meteor app工作正常(我正在使用默认的流星安装)。当这个应用程序被解散,并上传到服务器(我正在使用Nginx +节点)时,错误发生在脚本的一部分。

应用程序很好但是数据库被阻止了。有什么建议吗?

与'ws://www.all* * .com / sockjs / 867 / rfk8snwm / websocket'的WebSocket连接失败:WebSocket握手期间出错:意外响应代码:400

非常感谢提前。

1 个答案:

答案 0 :(得分:3)

引自meteorpedia

对于nginx上的websockets支持,您需要版本> = 1.4并使用以下配置:

location /sockjs/ {
        proxy_pass http://APP_LOCATION;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection $connection_upgrade;
}
  • 将APP_LOCATION替换为您的代理服务器定义或网址或诸如此类的内容。
  • 升级/连接行允许WebSockets支持。

如果您无法将nginx安装升级到1.4或更高版本,则需要通过在系统上设置以下环境变量来明确禁用流星内的websockets:

DISABLE_WEBSOCKETS=1

这将确保正确绕过websockets,有利于sockjs后退。