我已在Ubuntu 14.04上安装RabbitMQ,但无法从网络上的其他计算机连接到RabbitMQ服务器。
从安装RabbitMQ的计算机(仅从网络上的其他计算机)连接到服务器没有问题。
该页面指出“默认情况下,RabbitMQ将在所有可用接口上侦听端口5672”。
当尝试使用python中的pika从另一台服务器连接时,出现以下错误:
ERROR:pika.adapters.base_connection:Socket Error: 104
ERROR:pika.adapters.base_connection:Socket closed while authenticating indicating a probable authentication error
我添加了一个具有set_permissions newuser ".*" ".*" ".*"
权限的新用户,并尝试了URI身份验证方法,但是仍然收到相同的错误。
我也无法从网络上的其他计算机连接到RabbitMQ管理,但可以在本地PC上访问它。
另外,通过检查打开的端口,我可以看到以下内容:
tcp 0 0 0.0.0.0:25672 0.0.0.0:* LISTEN 1122/beam.smp
tcp 0 0 0.0.0.0:15672 0.0.0.0:* LISTEN 1122/beam.smp
tcp6 0 0 :::5672 :::* LISTEN 1122/beam.smp
我正在使用RabbitMQ教程中的python代码:
import pika
connection = pika.BlockingConnection(pika.ConnectionParameters(host='AAA.AAA.AAA.AAA'))
channel = connection.channel()
channel.queue_declare(queue='hello')
channel.basic_publish(exchange='',routing_key='hello',body='Hello World!')
print(" [x] Sent 'Hello World!'")
connection.close()
我想念什么?
有问题的代码未提供用户名或密码。 您可能需要更新连接参数以包括这些参数
credentials = pika.PlainCredentials('guest', 'guest')
parameters = pika.ConnectionParameters('rabbit-server1', 5672, '/', credentials)
connection = pika.BlockingConnection(params)
检查文档中是否有pika,以获取更多信息: http : //pika.readthedocs.org/en/0.10.0/modules/parameters.html?highlight=connectionParameters
另外,请检查以确保您具有有效的用户名和密码。 您的服务器上可能未启用“访客”用户名/密码