2017-12-18 173 views
0

我在服務器和我的系統上安裝了rabbitmq服務。 我想使用RPC模式:RabbitMQ連接錯誤「沒有指定的端點可達」

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

connection = factory.CreateConnection(); 

我有創造與此消息連接的錯誤:
無指定端點分別可達

當我使用它在服務器上的本地主機比如,它工程,但是當我創建從本地到該服務器的連接時,它返回錯誤。 它不適用於我本地計算機的本地IP和用戶名和密碼。


任何人都可以幫助我嗎?

+0

[RabbitMQ C#連接使用用戶名和密碼時出現問題]的可能重複(https://stackoverflow.com/questions/4987438/rabbitmq-c-sharp-connection-trouble-when-using-a-username-and -password) –

+0

@RazvanDumitru,我這樣做,但仍然有錯誤。 和代碼無法識別** FromEnvironment ** – parsa

+0

@RazvanDumitru謝謝你,你的指導幫助了我。 – parsa

回答

0

謝謝大家。 由於這樣的:
RabbitMQ C# connection trouble when using a username and password
安裝的RabbitMQ後,我啓用了管理工具在服務器和我的本地計算機與此有關:

rabbitmq-plugins enable rabbitmq_management 

然後我重新啓動的RabbitMQ服務從services.msc
我能看到的RabbitMQ管理在http://localhost:15672
我登錄到兔子管理與用戶:來賓和通行證:來賓
我添加了我最喜歡的用戶通行證與管理員訪問,所以它的工作。

0

這意味着客戶端無法訪問服務器158.2.14.42和默認虛擬主機/

也許防火牆配置

+0

我在服務器的widnows防火牆上添加** 5672 **端口,但沒有解決。 – parsa

+0

有什麼建議嗎?有什麼解決方案,我必須這樣做? – parsa

0

默認情況下,你說的RabbitMQ將監聽5672但是這是可以改變的,如果你看看你的配置(在MQ服務器上),你應該有一節:

rabbit.tcp_listeners

它將詳細說明正在使用的端口。檢查它是你的想法。

另外,你使用的是IPv4還是IPv6?您可能需要有其他配置才能支持這兩種配置。

對此有讀:

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

+0

它表示默認情況下,RabbitMQ將在所有可用接口上監聽端口5672。 在配置文件上,我必須改變什麼? – parsa