如何在我的服务器中实现Websocket(RFC 6455)?

时间:2012-08-02 21:39:35

标签: php websocket

我在谷歌搜索过它,在stackoverflow中有一些关于它的问题。 问题是它们中的许多都是旧的,所以我猜他们使用旧的和弃用的协议而不是RFC 6455.我不知道是不是因为这个或者我做错了什么,但当我尝试它时不起作用。

因此...

  1. 如果我理解的话,我可以使用aproppiate客户端(Javascript)和服务器(PHP)代码实现Websockets,而无需配置我的Apache服务器。我是对的?

  2. 为什么我发现的所有示例都要求我进入命令行并执行

    php -q C:\ path \ to \ file \ Websocket \ Server.php

  3. 在我发现的实现中,有一个默认的服务器和端口。我必须将它们更改为我用于普通网页的服务器(localhost)和端口吗?或者我应该告诉我的服务器是否要收听另一个端口并将其用于websocket通信?

  4. 我在哪里可以找到一个很好的Websockets PHP实现(RFC 6455)?

1 个答案:

答案 0 :(得分:1)

  1. 是的,这是正确的。

  2. 因为Websocket服务器不使用您的Web守护程序来提供数据。在这种情况下,您将完全用PHP编写服务器守护程序。

  3. 您需要选择一个端口,因为您没有使用Web守护程序来为您的websockets提供服务。任何未使用的端口都可以。

  4. 尝试Ratchet(主网站here)。我们现在一直在使用dev-master分支机构生产几个月,我们没有遇到任何问题。这是我们发现的唯一解决方案,开箱即用可以兼容Firefox客户端和iPhone。