使用Socket.io 0.7在Webkit中失败的Websocket握手

时间:2011-07-04 22:01:37

标签: node.js webkit websocket socket.io

我已经升级了我的node.js应用程序以使用最新的socket.io模块。但是,现在只有Firefox可以连接,Chrome和Safari会出现此错误:WebSocket握手期间出错:'Connection'标头值不是'Upgrade'

3 个答案:

答案 0 :(得分:3)

Nginx与HTTP 1.1不兼容(开箱即用),这是WebSockets所必需的。您将需要修补它(我无法帮助您,太麻烦)或者您可以使用node.js仅堆栈。

我使用node-http-proxy

另请参阅:Advantages of a reverse proxy in front of Node.JS

答案 1 :(得分:1)

是的,它完全是nginx - 我让一切工作正常,改变了一些不必要的东西,然后它就行不通了。只有在读完之后我才意识到我已经停止进入URL的端口,因此属于nginx的代理。添加了端口,立即工作。

答案 2 :(得分:0)

检查您的Nginx版本。 v1.4似乎工作正常,而我在v1.2上遇到了麻烦(并且不得不升级)。