web-dev-qa-db-ja.com

RabbitMQ接続エラー「指定されたエンドポイントのいずれにも到達できませんでした」

Rabbitmqサービスをサーバーとシステムにインストールしました。 RPCパターンを使用したい:

var factory = new ConnectionFactory() { 
  HostName = "158.2.14.42", 
  Port = Protocols.DefaultProtocol.DefaultPort, 
  UserName = "Administrator", 
  Password = "@server@", 
  VirtualHost = "/"
  ContinuationTimeout = new TimeSpan(10, 0, 0, 0) 
};

connection = factory.CreateConnection();

このメッセージで接続の作成中にエラーが発生しました:
指定されたエンドポイントのいずれにも到達できませんでした

サーバーのlocalhostインスタンスで使用すると動作しますが、ローカルからそのサーバーへの接続を作成すると、エラーが返されました。ローカルコンピューターのローカルIPおよびユーザー名とパスワードでは機能しません。


誰でも助けてくれますか?

8
parsa

ゲストを使用しないでください。独自のアカウントとパスワードを作成し、 http:// localhost:15672 /#/ users で、「仮想ホストにアクセスできる」が「/」であることを確認します

var factory = new ConnectionFactory() { 
  HostName = "192.168.1.121",
  Port = 5672,
  UserName = "fancky", 
  Password = "123456" 
};
1
fancky

クライアントがサーバーに到達できないことを意味します158.2.14.42およびデフォルトのvhost /

たぶんファイアウォール構成

1
Gabriele

デフォルトでは、RabbitMQは5672しかし、これは変更することができます。(MQサーバー上の)configを見ると、セクションが見つかります:

rabbit.tcp_listeners

使用されているポートの詳細が表示されます。あなたがそれが何であると思うかを確認してください。

また、IPv4またはIPv6を使用していますか?両方をサポートするには追加の設定が必要になる場合があります。

これを読んでください:

https://www.rabbitmq.com/networking.html

0
dougajmcdonald

1)RabbitMQコマンドプロンプトを開きます

2)パスをrabbitmq_serverがインストールされている「C:\ Program Files\RabbitMQ Server\rabbitmq_server-3.6.10\sbin」に変更します。

3)次のコマンドを実行:rabbitmq-plugins enable rabbitmq_management

ファイアウォールがブロックしている場合、ポップアップが表示されます。これに対してファイアウォールを許可します。

ブラウザでアクセスできるようになりました。

0
Avnish Patel

私はこのまさに問題を経験してきましたが、最終的には、URIを小文字で提供しただけで、マシンの名前は大文字でした。

それを理解するのに数時間かかったので、私はそれが誰かを助けるかもしれないと思った。

0
MaPi