Ubuntu
授予 PHP 發送/接收請求的權限
我已經基於這個庫編寫了一個 PHP websockets 伺服器:https ://github.com/Flynsarmy/PHPWebSocket-Chat
該庫作為伺服器執行,並處理所有傳入請求。當我在本地執行時客戶端可以連接(連接到 address
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改成你的區域網路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 地址可能會解決您的問題。