我试图在我的网站上设置PHP websockets。这工作我的本地WAMP的服务器上伟大的,但在我的网站,我不断收到一个警告:PHP websockets - 已在使用的地址
无法绑定地址[98]:地址已经在”
我尝试过各种库一起使用,但他们都返回这个错误
我的猜测是,我使用的端口是不是免费的。问题是,我无法访问终端,因为这是一个共享服务器(根据phpinfo()websockets是启用,顺便说一句)所以我不能找空闲的端口。也试图使用端口0 - 但没有运气。
提前致谢!
编辑: 举例来说,这是一个使用https://github.com/Flynsarmy/PHPWebSocket-Chat
// start the server
$Server = new PHPWebSocket();
$Server->bind('message', 'wsOnMessage');
$Server->bind('open', 'wsOnOpen');
$Server->bind('close', 'wsOnClose');
// 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($_SERVER['SERVER_ADDR'], 9300);
好一些代码,BlueHost的网站写道:“我们阻止用户访问某些端口,以帮助避免在防火墙中有安全漏洞...购买一专用IP将允许我们授予您访问运行特定服务所需的端口的权限。“技术支持人员否则告诉我。我猜这个案子已经关闭了。谢谢大家的时间!
通常你必须是特权用户使用低于10000的端口,因为它是共享的主机,它不可能你有特权,所以我想这是有可能得到该错误消息。尝试10000以上的端口,看看它是否工作。 – Cfreak
我得到了同样的错误:'( – talhof9
有多达65,535个端口,较低数字中的任何内容都可能正在使用中,您尝试过多少次?尝试大量40000以上的随机端口以查看是否仍然出现错误。 – MrCode