授予PHP发送/接收请求的权限

我已经写了一个基于这个库的PHP websockets服务器: https : //github.com/Flynsarmy/PHPWebSocket-Chat

该库作为服务器运行,处理所有传入的请求。 客户端可以在本地运行时连接(连接到地址127.0.0.1:9300 ),但如果我的客户端不在运行服务器的计算机上,则无法连接。 我试过关掉防火墙, 是否有另一个特权,我需要授予PHP,以便它能够接收和响应websocket通信?

我正在运行PHP5,Ubuntu Server 12.04 LTS,并与Google Chrome(最新)连接。

  From line 62 of https://github.com/Flynsarmy/PHPWebSocket-Chat/blob/master/server.php 

//对于其他计算机连接,您可能需要更改/ /您的LAN IP或外部IP,或者使用:gethostbyaddr(gethostbyname($ _ SERVER ['SERVER_NAME']))

$ Server-> wsStartServer('127.0.0.1',9300);

改变这一行,

  $Server->wsStartServer('0.0.0.0', 9300); 

或IP到您的LAN IP并尝试。

文件server.php包含你的问题的答案

 // for other computers to connect, you will probably need to change this to your LAN IP or external IP, // alternatively use: gethostbyaddr(gethostbyname($_SERVER['SERVER_NAME'])) $Server->wsStartServer('127.0.0.1', 9300); 

将最后一行更改为服务器的公共IP地址可能会解决您的问题。

只需编辑server.php; 现在它只监听环回[$ Server-> wsStartServer('127.0.0.1',9300); ]。 将其更改为监听所有ips [0.0.0.0?]或至less一个分配给networking接口的ip [eth0? ]你的服务器。