PHP无法连接到端口5222上的本地主机XMPP服务器
问题描述:
我已经在我的Windows机器上本地设置了ejabberd安装,我也有Apache,PHP和MySQL。我也已经证实,它使用Digsby的效果很好,并通过创建一些用户,发送一些消息等等来刺激轮胎。一切都很好。PHP无法连接到端口5222上的本地主机XMPP服务器
然而,PHP甚至不能在其最简单的层面打开使用stream_socket_client端口5222的流:
stream_socket_client("tcp://localhost:5222", $errno, $errstr, 30, STREAM_CLIENT_CONNECT);
返回超时错误。但是,再次,连接到端口5222的IM客户端到本地主机工作正常。 (使用stream_socket_client在端口80上打开到localhost的简单连接也可以。)
任何想法?我卡住了!
答
SELinux的需要被关闭,或者让apache的交谈XMPP
答
许多服务器默认不回送设备上听,或者只在:: 1或127.0.0.1监听和本地主机都指向另一个。检查做:
% netstat -an | grep 5222
,并检查监听线,显示在您的服务器监听输出。
最后,尝试明确使用您的box的IP地址作为连接主机名。
你1)看看有什么错误信息? 2)检查服务器是否正在运行,即在本地主机上? – mauris 2010-04-05 23:49:46
是的,错误消息只是说连接超时: “连接尝试失败,因为连接方在一段时间后没有正确响应,或建立的连接失败,因为连接的主机未能响应。 正如我上面所说的,服务器正在运行,并且可以从标准IM客户端连接到服务器。 – 2010-04-05 23:51:16