【问题标题】:MSMQ over HTTP (WAN)基于 HTTP 的 MSMQ (WAN)
【发布时间】:2017-10-19 19:54:56
【问题描述】:

我正在尝试使用 MSMQ(通过 http)通过 Internet 从一台机器向另一台机器发送消息。

据我所知,我已经通过添加功能和角色启用了所有正确的部分。

MSMQ Over HTTP 也已包含在内。

我已经构建了自己的小 c# 应用程序。

我的队列格式为:

FormatName:DIRECT=$/testqueue(所以 IP - 不是 FQDN)

当我尝试发送消息时,消息永远不会到达目标队列。

当我通过 RDP 进入需要接收消息的服务器时,并使用同一应用程序中的以下内容:

格式名称:DIRECT=$/testqueue

有效!

我添加了额外的权限(所有人/匿名登录/网络服务) - 完全控制,但无济于事。

端口 80 已打开 - 我相信这是唯一需要打开的端口。

我也在我的 windows 开发盒上尝试过这个,作为隔离测试的一种形式,同样的事情又来了!本地主机没有问题,按预期添加到队列中,但是一旦我添加了 WAN IP 就没有任何反应。

所有未发送的消息刚刚开始填满外发消息,表明没有成功。

请大家帮忙 - 需要额外的端口吗?更多权限?期待您的帮助!

查德

【问题讨论】:

    标签: c# iis msmq


    【解决方案1】:

    好的,所以我想通了。

    需要做的是创建一个映射文件。

    1. C:\Windows\System32\msmq\Mapping
    2. 创建一个 xml 文件(可以任意命名)

    将以下内容添加到文件中。

     <redirections xmlns="msmq-queue-redirections.xml">  
       <redirection>  
          <from>http://servername-OR-IP/MSMQ/private$/testqueue</from>  
          <to>http://localhost/MSMQ/private$/testqueue</to>   
       </redirection>  
     </redirections> 
    
    1. 确保重新启动消息服务(开始->运行->services.msc->消息队列->右键单击->重新启动

    这对我有用。希望这对某人有所帮助。

    查德

    猜你喜欢
    • 2019-04-30
    • 1970-01-01
    • 2016-06-29
    • 2015-05-23
    • 2016-10-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-23
    相关资源
    最近更新 更多