我在两台机器上运行了一个RabbitMQ集群,让它们称之为rmq1和rmq2。
我正在使用PHP驱动程序连接到节点。当我从rmq1或2运行代码并且我的主机是localhost
时,连接有效。但是当我尝试从网络中的另一个节点进行连接时,连接失败并显示以下错误
[PhpAmqpLib\Exception\AMQPRuntimeException]
Error reading data. Received 0 instead of expected 7 bytes
我已经验证我的RabbitMQ正在监听所有接口,如下所示:
sudo netstat -plunt | grep 5672
tcp 0 0 0.0.0.0:25672 0.0.0.0:* LISTEN 2749/beam.smp
tcp 0 0 0.0.0.0:15672 0.0.0.0:* LISTEN 2749/beam.smp
tcp6 0 0 :::5672 :::* LISTEN 2749/beam.smp
我尝试从局域网远程登录到主机
telnet 192.168.0.40 5672
Trying 192.168.0.40...
Connected to 192.168.0.40.
Escape character is '^]'.
也有效。那是什么给出了什么?
答案 0 :(得分:0)
很可能您正在使用来宾登录来连接RabbitMQ服务器。访客登录只能通过localhost工作,您必须添加另一个用户,除了localhost之外,还有权访问RabbitMQ。