C# RabbitMQ连接错误“;没有一个指定的端点是可到达的;
我在服务器和系统上安装了rabbitmq服务。 我想使用RPC模式:C# RabbitMQ连接错误“;没有一个指定的端点是可到达的;,c#,asp.net,rabbitmq,C#,Asp.net,Rabbitmq,我在服务器和系统上安装了rabbitmq服务。 我想使用RPC模式: var factory = new ConnectionFactory() { HostName = "158.2.14.42", Port = Protocols.DefaultProtocol.DefaultPort, UserName = "Administrator", Password = "@server@", VirtualHost = "/" ContinuationTimeo
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和我的本地计算机的用户名和密码
有人能帮我吗?这意味着客户端无法访问服务器
158.2.14.42
和默认vhost/
默认情况下,RabbitMQ可能会监听
5672
上的防火墙配置,但这是可以更改的,如果您查看配置(在MQ服务器上),您应该找到一个部分:
rabbit.tcp\u侦听器
这将详细说明正在使用的端口。检查你认为是什么
另外,您使用的是IPv4还是IPv6?您可能需要额外的配置来支持这两种功能
读一读:
谢谢大家。
因此:
https://stackoverflow.com/questions/4987438/rabbitmq-c-sharp-connection-trouble-when-using-a-username-and-password
安装RabbitMQ后,我在服务器和本地计算机上启用了以下管理工具:
rabbitmq-plugins enable rabbitmq_management
然后我从services.msc
我可以在http://localhost:15672
我使用用户:guest和pass:guest登录到rabbit management
我添加了具有管理员访问权限的我最喜欢的用户通行证,因此它起了作用。不要使用guest。创建您自己的帐户和密码,并在中确保“可以访问虚拟主机”为“/”
1) 打开RabbitMQ命令Promp
2) 将路径更改为“C:\Program Files\RabbitMQ Server\RabbitMQ_Server-3.6.10\sbin”,其中安装了RabbitMQ_Server
3) 运行以下命令:
rabbitmq插件支持rabbitmq_管理
如果防火墙阻止了它,则弹出显示。允许防火墙进行此操作
现在,您可以在浏览器中访问。我遇到了这个问题,最后它只是提供了小写的URI,而机器的名称是大写的
由于花了几个小时才弄明白,我认为这可能会帮助其他人。在我们的例子中,这是系统.线程.任务.扩展的程序集绑定失败
,我们的异常记录器没有记录内部异常
Exception information:
Exception type: FileLoadException
Exception message: Could not load file or assembly 'System.Threading.Channels, Version=4.0.2.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
at RabbitMQ.Client.Framing.Impl.AutorecoveringConnection..ctor(ConnectionFactory factory, String clientProvidedName)
at RabbitMQ.Client.ConnectionFactory.CreateConnection(IEndpointResolver endpointResolver, String clientProvidedName) in /_/projects/RabbitMQ.Client/client/api/ConnectionFactory.cs:line 494
非常糟糕的误导性错误消息。可能重复@RazvanDumitru,我很喜欢,但仍然有错误。代码无法识别FromEnvironment@RazvanDumitru谢谢,您的指导帮助了我。我在服务器的widnows防火墙上添加了5672端口,但没有解决。有什么建议吗?有什么解决方案我必须这样做吗?它说默认情况下,RabbitMQ将侦听所有可用接口上的端口5672。在配置文件中,我必须更改任何内容吗?
Exception information:
Exception type: FileLoadException
Exception message: Could not load file or assembly 'System.Threading.Channels, Version=4.0.2.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
at RabbitMQ.Client.Framing.Impl.AutorecoveringConnection..ctor(ConnectionFactory factory, String clientProvidedName)
at RabbitMQ.Client.ConnectionFactory.CreateConnection(IEndpointResolver endpointResolver, String clientProvidedName) in /_/projects/RabbitMQ.Client/client/api/ConnectionFactory.cs:line 494