python - 无法远程访问 RabbitMq 服务器
问题描述
我无法远程访问 RabbitMq 服务器。当我在一台机器上执行此操作并连接到 localhost:15672 时,它可以工作,但是当我从远程机器上尝试时,它就不行了。
我已经创建了一个具有所有权限的用户并检查计算机上的 5672 端口是否工作(只是尝试从远程计算机连接到他)。另外,我尝试连接到 15672 端口,但没有结果。
credentials = pika.PlainCredentials(username= 'username', password='password')
parameters = pika.ConnectionParameters(host='188.19.100.226',
port=5672,
virtual_host= '/',
credentials=credentials)
connection = pika.BlockingConnection(parameters=parameters)
channel = connection.channel()
channel.queue_declare(queue='hello')
channel.basic_publish(exchange='',
routing_key='hello',
body=hello)
print ("Sent!")
connection.close()
我希望看到 Sent!,但我没有得到:
ERROR:pika.adapters.utils.io_services_utils:Socket failed to connect: <socket.socket fd=7, family=AddressFamily.AF_INET, type=2049, proto=6, laddr=('192.168.100.2', 44752)>; error=111 (Connection refused)
ERROR:pika.adapters.utils.connection_workflow:TCP Connection attempt failed: ConnectionRefusedError(111, 'Connection refused'); dest=(<AddressFamily.AF_INET: 2>, <SocketKind.SOCK_STREAM: 1>, 6, '', ('188.19.100.226', 5672))
ERROR:pika.adapters.utils.connection_workflow:AMQPConnector - reporting failure: AMQPConnectorSocketConnectError: ConnectionRefusedError(111, 'Connection refused')
ERROR:pika.adapters.utils.connection_workflow:AMQP connection workflow failed: AMQPConnectionWorkflowFailed: 1 exceptions in all; last exception - AMQPConnectorSocketConnectError: ConnectionRefusedError(111, 'Connection refused'); first exception - None.
ERROR:pika.adapters.utils.connection_workflow:AMQPConnectionWorkflow - reporting failure: AMQPConnectionWorkflowFailed: 1 exceptions in all; last exception - AMQPConnectorSocketConnectError: ConnectionRefusedError(111, 'Connection refused'); first exception - None
ERROR:pika.adapters.blocking_connection:Connection workflow failed: AMQPConnectionWorkflowFailed: 1 exceptions in all; last exception - AMQPConnectorSocketConnectError: ConnectionRefusedError(111, 'Connection refused'); first exception - None
ERROR:pika.adapters.blocking_connection:Error in _create_connection().
Traceback (most recent call last):
File "/home/roman/PycharmProjects/trrp2/venv/lib/python3.6/site-packages/pika/adapters/blocking_connection.py", line 450, in _create_connection
raise self._reap_last_connection_workflow_error(error)
pika.exceptions.AMQPConnectionError
Traceback (most recent call last):
File "/home/roman/PycharmProjects/trrp2/send.py", line 52, in <module>
connection = pika.BlockingConnection(parameters=parameters)
File "/home/roman/PycharmProjects/trrp2/venv/lib/python3.6/site-packages/pika/adapters/blocking_connection.py", line 359, in __init__
self._impl = self._create_connection(parameters, _impl_class)
File "/home/roman/PycharmProjects/trrp2/venv/lib/python3.6/site-packages/pika/adapters/blocking_connection.py", line 450, in _create_connection
raise self._reap_last_connection_workflow_error(error)
pika.exceptions.AMQPConnectionError
解决方案
您需要配置rabbitmq 以侦听本地主机以外的其他接口。要接受来自所有接口的连接,请收听 0.0.0.0
推荐阅读
- crystal-reports - 水晶报表将报表页脚移到详细信息上方
- javascript - 使用 XML HTTP 请求和 POST 方法向服务器发送 JSON 字符串
- typescript - 如何为 ngxs 动作实现 Debounce 模拟?
- python - 虚拟环境使用 Python3 而不是 Python 2.7
- android - 导航栏按钮上的 Nullpointerexception (Fragment & Android)
- javascript - javascript,异步,等待:无法将值提取到类变量中
- visual-studio - UWP 使用 Live Visual Tree 编辑 NavigationView 设计
- .net - 为什么 vb .net 在 .txt 中重复写入同一行文本?
- android - 在Android上散列ripemd160?
- javascript - Spotify - 如何/在哪里生成 ENCRYPTION_SECRET?