- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
我正在尝试为我正在进行的一个小项目创建一个 Web Socket 服务器。
我已经设置了服务器(位于家中)并将端口转发到 80 和 22。我阅读了本教程:here
每当我通过 ssh 进入我的服务器运行“startDarmon.php”时,我都会收到以下错误:
PHP Warning: socket_bind(): unable to bind address [98]: Address already in use in
/var/www/server/socket.class.php on line 48
2013-02-23 14:15:38 System: Socket bound to localhost:8000.
2013-02-23 14:15:38 System: Start listening on Socket
我认为这就是阻止我的客户端连接到服务器的原因。所以在 startDarmon.php 文件中我有:
$WebSocket = new socketWebSocket('MY_IP_NOT_LAN_IP',8000);
在我的客户端文件中,我有:
var host = "ws://MY_IP_NOT_LAN:8000/server/startDaemon.php";
有没有人对为什么这不允许我建立连接有任何建议?
最佳答案
我猜问题出在 Linux 服务器上。
在 root 下运行 netstat -a -p -n
命令(例如使用 sudo
)以了解哪个进程正在使用该端口。然后也许做一个setsockopt(2)使用 SO_REUSEADDR
(有关更多信息,请参阅 socket(7))。
TCP 协议(protocol)有一些指定的延迟(以分钟为单位)(例如保持事件等)。参见例如tcp(7)
我确实建议阅读一本关于 Linux 系统编程的好书,例如 Advanced Linux Programming也许还有一些关于网络编程的 Material 。
关于php - socket_bind() 无法绑定(bind)地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15041518/
我不确定我问的问题是否正确。但请帮我解决这个问题。 我正在使用 PHP 和 websocket 实现实时聊天应用程序。我位于仅允许 80 和 443 的防火墙后面,因此我计划仅使用这两个端口。我尝试了
我已经看到这个问题至少被问过十几次了。没有任何回复对我有帮助。 代码: $host = "127.0.0.1"; $port = 80; //no timeout set_time_limit(0);
我正在尝试为我正在进行的一个小项目创建一个 Web Socket 服务器。 我已经设置了服务器(位于家中)并将端口转发到 80 和 22。我阅读了本教程:here 每当我通过 ssh 进入我的服务器运
我正在尝试与特定硬件建立 udp 套接字连接,该硬件在端口 7715 接收数据,将答案发送到 udp 端口 7714,端口无法更改。下面的一段代码:
我正在尝试在 EC2 实例上使用套接字,但是当我尝试运行代码时出现以下错误: PHP Warning: socket_bind(): unable to bind address [99]: Cann
我正在尝试在 Amazon Web Services 上启动一个简单的套接字服务器,但在尝试像这样绑定(bind)套接字时收到一条错误消息: var s:Socket = new Socket();
我创建了一个用于群聊的 php 套接字服务器,我试图在 Linus(centos) + nginx 上运行它,我已经尝试了大约 3 天但没有成功。它一直给我这个错误 Warning: socket_b
我是一名优秀的程序员,十分优秀!