Pika无法从远程IP地址使用RabbitMQ

时间:2017-06-28 07:55:06

标签: python ubuntu rabbitmq pika

我使用Python和pika是因为我想将RabbitMQ的数据从服务器发送到另一个服务器。

我按照以下教程创建了一个使用者和制作者: https://www.rabbitmq.com/tutorials/tutorial-one-python.html

在同一台机器上,我可以向localhost发送消息并从localhost读取它,它将起作用。

但是从服务器到另一个服务器会产生错误,例如ConnectionClosed,ProbableAccessDeniedError,ProbableAuthenticationError

我尝试使用管理员权限创建凭据,而不是使用默认的来宾/来宾凭据。我还将超时从0.25增加到2秒

 credentials = pika.credentials.PlainCredentials(server['username'], server['password'], erase_on_connect=False)

 connection = pika.BlockingConnection(pika.ConnectionParameters(host=server['ip'], credentials=credentials, socket_timeout=2))

我甚至试图从同一台机器发送和接收,而不是指定本地主机'我将提供机器IP地址,但这没有工作

1 个答案:

答案 0 :(得分:0)

我发现问题发生在托管生产者的远程服务器上。

我创建的用户是管理员用户,但缺少权限。

基本上这是解决方案(它是我最初忘记的第三行):

SetEnv APPLICATION_ENV production

RewriteEngine On
RewriteRule .* index.php