因此,我刚刚安装了最新版本的Rabbitmq,并且一直在努力使其正常运行。服务器正在运行,为了确保它是一个一致的问题,我已经重新启动了它一次。

如果我telnet localhost 5672,我得到

Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
Connection closed by foreign host.

如您所见,连接被接受,但是rabbitmq不接受任何输入。连接将立即关闭。日志中没有显示更多信息。
rabbitmqctl可以正常工作。

它在Linux / Ubuntu的Windows子系统上运行。对于本地开发人员环境,我没有其他选择,因为我使用的工作计算机非常紧。

最佳答案

我遇到了相同的问题,在Windows和Rabbitmq 3.7.8上使用Ubuntu(16.04)作为子系统。我注意到,在运行sudo rabbitmqctl status时,侦听器显示以下内容:

{listeners,[{clustering,25672,"::"},{amqp,5672,"::"}]}

我通过创建Rabbitmq配置文件并指定localhost和5762端口来解决此问题

这是我一步一步做的。
  • 使用sudo && vim,我创建了一个'rabbitmq.conf'文件,位于
    / etc / rabbitmq /
    sudo vim /etc/rabbimq/rabbitmq.conf
    
  • 我为默认指定了localhost(127.0.0.1)和port(5672)
    Rabbitmq.conf文件中的tcp侦听器
    listeners.tcp.default = 127.0.0.1:5672
    
  • 重新启动rabbitmq
    sudo service rabbitmq-server stop
    然后
    sudo service rabbitmq-server start
  • 检查sudo rabbitmqctl status并查看侦听器,您应该看到带有本地ip分隔的新tcp侦听器

    {listeners,[{clustering,25672,“::”},{amqp,5672,“127.0.0.1”}]}

  • 这是Rabbitmq的config docs,可能有助于阐明其中一些步骤。

    关于rabbitmq - RabbitMQ接受连接,但在接受任何输入之前将其关闭,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49285088/

    10-16 17:40