利用WORKMAN创建了一个服务器后
<?php
use Workerman\Worker;
require_once './Workerman/Autoloader.php';
// 创建一个Worker监听2346端口,使用websocket协议通讯
$ws_worker = new Worker("http://0.0.0.0:3307");
// 启动4个进程对外提供服务
$ws_worker->count = 4;
// 当收到客户端发来的数据后返回hello $data给客户端
$ws_worker->onMessage = function($connection, $data)
{
// 向客户端发送hello $data
$connection->send('hello ' . $data);
};
// 运行
Worker::runAll();
?>
通过php * -start启动后,在另外一台电脑上通过服务器的"外网IP:3307"(假设)无法访问,curl http://外网IP:3307也不行(在本机可以),试问下问题出在了哪里
很明显,服务器防火墙挡住了。参考手册常见问题一章
iptables确实的放行了此端口
关闭防火墙试下
@1:试了,木有用,CENTOS6.5的系统
可能ip不对,在你的服务器上运行ip addr,看下外网ip和你访问的ip是一致的不?
本机可以,外网不行,那应该是网络配置问题了,这个得找你们运维看看了。
@1:解决了,我用的ucloud,忘了在虚拟主机的防火墙那边放行了,3q~~