HTML5 Websockets服务器要求

时间:2010-12-10 10:24:46

标签: javascript apache html5 lamp websocket

昨天我花了整整一个时间来试图解决HTML5的网页问题,但我仍然对以下几点感到困惑:

  1. 我是否需要在我的apache服务器上安装任何进一步的附件来运行websocket服务器?
  2. 是否可以在共享服务器设置上运行websockets而无需访问服务器根目录?
  3. IE9是否支持websockets,如果没有,那么如果有这么有限的浏览器支持,是否有任何一点可以使用它们?我应该看一下投票技巧吗?
  4. 如何运行同步的websockets(例如多个聊天应用程序实例)如何唯一地定义?
  5. 对于不支持websockets的浏览器,是否有可靠的回退?
  6. 希望有人可以帮助我理解这些要点,非常有意义!

    W上。

3 个答案:

答案 0 :(得分:4)

不要将WebSockets视为Web服务器插件。 WebSockets是一种在浏览器和其他东西之间建立(几乎)原始套接字连接的方法。标准委员会希望允许Web服务器轻松地将WebSocket连接转发到其目标服务,但是从协议的v76开始,WebSockets握手明显与HTTP设置不兼容(出于模糊的安全原因)。这可能会在未来发生变化,特别是在v76设置过程中发现了严重的安全问题。

是的,WebSockets握手看起来很像HTTP,因此很容易混淆,但即使它与HTTP升级请求兼容,它仍然只是为了让Web服务器轻松转发,而不是webserver可以成为WebSockets服务器。

最近有security issue in WebSockets这可能意味着大多数浏览器制造商都会禁用WebSockets,直到协议的下一个版本准备就绪,但除此之外,WebSockets几乎普遍支持,因为没有原生支持的浏览器可以使用{{ 3}}这是一个基于Flash的回退。 iOS 4.2也支持WebSockets(尽管由于安全问题,可能会暂时禁用)。

因此,您的问题的答案是: 1)Mu 2)是3)不太可能4)WebSockets未定义5)是:请参阅web-socket-js

答案 1 :(得分:4)

  

对于不支持websockets的浏览器,是否有可靠的回退?

Socket.IO似乎运作良好。我还没有自己开发,但是我已经测试过使用它的应用程序与不支持WebSockets的浏览器本身。

对于它的价值,您可能希望在讨论和/或研究HTML5时放弃HTML5。 WebSockets不再是HTML5的一部分。如果您搜索“HTML5 WebSockets”的信息,则更有可能找到过时的信息。

答案 2 :(得分:0)

1)不。 2)是的。 3)谁知道。微软并没有像往常一样说,但可能不会这样说。

Firefox,Chrome和Opera都宣布他们暂时不支持网络套接字,因为标准不完整且存在安全问题。现在搞这个可能为时尚早。