簡體   English   中英

RabbitMQ拒絕連接

[英]RabbitMQ refuses connection

我正在MacOS上運行庫存的RabbitMQ安裝。 僅使用“ rabbitmq-server”啟動服務器。

使用Java API,我可以輕松地以“ localhost”作為主機連接到RabbitMQ,如下所示:

val factory = new ConnectionFactory()
factory.setHost( "localhost" )
val connection = factory.newConnection()

但是,當我嘗試使用其他IP(例如,計算機的實際IP)時,出現連接拒絕錯誤。

Exception in thread "main" java.net.ConnectException: Connection refused
    at java.net.PlainSocketImpl.socketConnect(Native Method)
    at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:345)
    at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
    at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
    at java.net.Socket.connect(Socket.java:589)
    at com.rabbitmq.client.impl.FrameHandlerFactory.create(FrameHandlerFactory.java:32)
    at com.rabbitmq.client.ConnectionFactory.newConnection(ConnectionFactory.java:615)
    at com.rabbitmq.client.ConnectionFactory.newConnection(ConnectionFactory.java:639)
    at com.gwz.Junk$delayedInit$body.apply(Junk.scala:8)
    at scala.Function0$class.apply$mcV$sp(Function0.scala:40)
    at scala.runtime.AbstractFunction0.apply$mcV$sp(AbstractFunction0.scala:12)
    at scala.App$$anonfun$main$1.apply(App.scala:71)
    at scala.App$$anonfun$main$1.apply(App.scala:71)
    at scala.collection.immutable.List.foreach(List.scala:318)
    at scala.collection.generic.TraversableForwarder$class.foreach(TraversableForwarder.scala:32)
    at scala.App$class.main(App.scala:71)
    at com.gwz.Junk$.main(Junk.scala:5)
    at com.gwz.Junk.main(Junk.scala)

我的ifconfig顯示如下的inet地址:

inet 127.0.0.1 netmask 0xff000000
inet 172.16.240.21 netmask 0xffffff00 broadcast 172.16.240.255
inet 192.168.59.3 netmask 0xffffff00 broadcast 192.168.59.255
inet 10.0.0.125 netmask 0xffffff00 broadcast 10.0.0.255

回送127.0.0.1有效。 但是其他人則沒有。 我需要其他三個之一來工作。

我是否需要做其他事情以允許通過本地IP連接?

可能有多個解決方案,但是我發現的是:

首先在rabbitmq.conf中打開loopback_users:

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

然后,將本地計算機的IP地址放在Rabbitmq-env.conf中(無論您的計算機上安裝了什么地址):

NODE_IP_ADDRESS=10.0.1.45

這對我來說默認為localhost,因此這兩個更改一起允許使用非localhost IP訪問我的來賓帳戶。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM