gatewayclient 和 workerman 不在同一服务器 通过gatewayclient 向指定客户端发送数据 无法发送

0

[2] ErrorException in Gateway.php line 1187
stream_socket_client(): unable to connect to tcp://172.18.13.186:2900 (������ӷ���һ��ʱ���û���ȷ�

G5(HYRJ27@~J]RJP}XAO3Y.png
已邀请:

keytehu

赞同来自: yuhanyo

两台服务器不在一个局域网连不上很正常

blogdaren - 乐于分享的PHP码农【http://www.blogdaren.com】

赞同来自: yuhanyo

有好几处问题需要注意:
1、客户端和gatewayworker服务端在同一个内网吗? 若不在,$gateway->lanIp要设置成gateway服务器的公网IP;
2、所有的相关端口防火墙该放行都得放行;
3、既然是分布式通讯,registerAddress 肯定不能有 127.0.0.1 类似这样的设置;

yuhanyo - 90

赞同来自:

start_gateway.php 中的lanIp是我阿里服务器的内网ip 客户端在我本地电脑的tp框架中连接服务端报错 根据文档的方法一和方法三都操作报以上相同错误
linux服务端配置:





Tp5客户端:

yuhanyo - 90

赞同来自:

@blogdaren 安照您的方法我将 lanIP设置为了我的阿里云服务器公网IP $gateway->lanIp = '120.78.85.40';
start_businessworker.php
start_gateway.php
start_text_gateway.php
start_text_gateway.php
这四个文件中的registerAddress 我也设置为了公网ip '120.78.85.40:1238'
但是这样设置后服务无法启动报错如下:


要回复问题请先登录注册