Python RabbitMQ给出了一个;拒绝访问,拒绝用户登录“;尝试遵循芹菜教程时出错
我试图遵循,但在运行Python RabbitMQ给出了一个;拒绝访问,拒绝用户登录“;尝试遵循芹菜教程时出错,python,django,rabbitmq,amqp,celery,Python,Django,Rabbitmq,Amqp,Celery,我试图遵循,但在运行python manage.py celeryd时遇到了一个问题:我的RabbitMQ服务器(安装在我的开发设备上的虚拟机上)不允许我的用户登录 我在Django管理控制台上获得以下信息: [ERROR/MainProcess] AMQP Listener: Connection Error: Socket closed. Trying again in 2 seconds... 这将显示在RabbitMQ服务器上我的rabbit.log文件中: exception on
python manage.py celeryd
时遇到了一个问题:我的RabbitMQ服务器(安装在我的开发设备上的虚拟机上)不允许我的用户登录
我在Django管理控制台上获得以下信息:
[ERROR/MainProcess] AMQP Listener: Connection Error: Socket closed. Trying again in 2 seconds...
这将显示在RabbitMQ服务器上我的rabbit.log
文件中:
exception on TCP connection <0.5814.0> from $DJANGO_BOX_IP
{channel0_error,starting,{amqp,access_refused,"login refused for user '$CONFIGURED_USER'",'connection.start_ok'}}
你在经营django吗?
如果是,请尝试以下方法:
>>> from carrot.connection import DjangoBrokerConnection
>>> c = DjangoBrokerConnection()
>>> c.connection
它给出同样的结果吗?
是否确实连接到了正确的主机名,并且用户名和密码可以访问虚拟主机
更新:
>>> from carrot.connection import DjangoBrokerConnection
>>> c = DjangoBrokerConnection()
>>> for n in ("host", "userid", "password", "virtual_host", "ssl"):
... print("%s -> %s" % (n, repr(getattr(c, n, None))))
更新:在运行c.connection之前必须执行上述操作,因为连接是在carrot中惰性地建立的。我正在运行Django。从Django shell执行上述操作会给我一个相当长的回溯,并导致以下错误:
IOError:socketclosed
。我将用回溯更新问题。好的,配置中一定有错误,主机、vhost、权限、用户名、密码等等。有关更多疑难解答,请参阅我的答案更新。谢谢。登录信息错误:我在密码设置中获得了virtualhost值。
>>> from carrot.connection import DjangoBrokerConnection
>>> c = DjangoBrokerConnection()
>>> for n in ("host", "userid", "password", "virtual_host", "ssl"):
... print("%s -> %s" % (n, repr(getattr(c, n, None))))