我在我的 Windows 服务器上使用 rabbitmq,我想通过使用 URL 而不是服务器 ip 地址将请求从客户端发送到服务器。 所以我在 IIS 上设置了具有此角色的 URL 重写器 ({C:1}://127.0.0.1:5672/{R:1}) 但它不起作用。 我意识到 URL 重写器不支持 amqp 协议,我为 rabbitmq 安装了 stomp 插件并将客户端代码和 IIS 角色更改为 ({C:1}://127.0.0.1:61613/{R:1}) 但客户端可以' t 在服务器外发送消息。
测试程序在服务器内部工作正常并正确发送消息,但当数据通过 IIS 时未收到消息
这是客户端代码:
var facConnection = new ConnectionFactory()
{
HostName = "https://rabbitmq.mysite.com",
UserName = "guest",
Password = "guest",
VirtualHost = "/",
};
var body = Encoding.UTF8.GetBytes("Message");
using var connection = facConnection.CreateConnection();
using var channel = connection.CreateModel();
channel.QueueDeclare("test", false, false, false, null);
channel.BasicPublish("", routingKey: "test", body: body);
这是错误信息:
“没有一个指定的端点是可达的”