我在nginx后面运行节点。在本地测试服务器上我的meteor app工作正常(我正在使用默认的流星安装)。当这个应用程序被解散,并上传到服务器(我正在使用Nginx +节点)时,错误发生在脚本的一部分。
应用程序很好但是数据库被阻止了。有什么建议吗?
与'ws://www.all* * .com / sockjs / 867 / rfk8snwm / websocket'的WebSocket连接失败:WebSocket握手期间出错:意外响应代码:400
非常感谢提前。
答案 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;
}
如果您无法将nginx安装升级到1.4或更高版本,则需要通过在系统上设置以下环境变量来明确禁用流星内的websockets:
DISABLE_WEBSOCKETS=1
这将确保正确绕过websockets,有利于sockjs后退。