PHP警告:socket_bind():无法绑定地址

socket_bind():unable to bind address


绑定socket 公网ip时报错PHP Warning: socket_bind(): unable to bind address [99]: Cannot assign requested address in /var/www/html/tcp.php on line 8


环境:

 本地 win10 + php7.1nts + nginx1.2

 阿里云 CentOS7.6 + php7.1nts + nginx1.2​


在本地测试 socket 时,服务端设置IP地址:127.0.0.1,客户端IP是:127.0.0.1 是正常运行的;放到公网服务器后,服务端、客户端IP地址都改为了公网IP地址,结果一直报错:PHP Warning:  socket_bind(): unable to bind address  ;此问题引起错误原因大概是:


  1、端口被占用了

 2、端口处于TIME_WAIT状态

 3、IP写错了


端口号是已经加入到了安全组,但还是不可用。


解决方法:


 在阿里云上的 ECS 实例是有两个IP地址的,一个是公网地址,一个是内网地址,将服务端的IP地址填写阿里云给的内网地址,客户端IP地址填写阿里云给的公网地址,再次测试可以正常运行了。

上一篇:大数据时代下,需要什么样的冷存储?


下一篇:Sublime Text3前端必备插件