python – 尝试将消息发送到远程队列时的pika.exceptions.ProbableAuthenticationError

前端之家收集整理的这篇文章主要介绍了python – 尝试将消息发送到远程队列时的pika.exceptions.ProbableAuthenticationError前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我正在尝试运行RabbitMQ Python tutorial,但在虚拟机主机和接收器上使用发送器,在虚拟机客户机上运行队列.所以我修改了提到的send.py代码,只修改了localhost和192.168.1.5.当我运行它时,我收到以下错误

...
  File "/home/damian/.virtualenvs/kivy_1.9/local/lib/python2.7/site-packages/pika/adapters/base_connection.py",line 153,in _check_state_on_disconnect
    raise exceptions.ProbableAuthenticationError
pika.exceptions.ProbableAuthenticationError

rabbitmq-server似乎正在运行,因为当我停止它时send.py给了我:

...
  File "/home/damian/.virtualenvs/kivy_1.9/local/lib/python2.7/site-packages/pika/adapters/blocking_connection.py",line 301,in _adapter_connect
    raise exceptions.AMQPConnectionError(error)
pika.exceptions.AMQPConnectionError: Connection to 192.168.1.5:5672 Failed: [Errno 111] Connection refused

这很有道理.

如何修复ProbableAuthenticationError?

主机是Debian 7,Python 2.7.3和pika 0.9.14,guest是Ubuntu 15.04 with rabbitmq-server 3.4.3-2

最佳答案
这是因为您尝试远程使用用户名和密码来验证身份验证.从RabbitMQ 3.3开始,您需要创建一个远程使用的新帐户,并且guest / guest只能在本地使用.

这取自更改日志here.

25603 prevent access using the default guest/guest credentials except via localhost since (1.0.0)

通过从loopback_users中删除guest虚拟机,可以修改RabbitMQ配置以允许使用guest帐户进行远程访问,但建议创建一个新用户以遵循最佳实践.

[{rabbit,[{loopback_users,[]}]}].

猜你在找的Python相关文章