如何通过HTTP获取MSMQ不在“默认网站”上工作

时间:2014-03-05 16:25:47

标签: http msmq netmsmqbinding msmqbinding

它真的在标题中......

我已经在DEFAULT网站上通过HTTP接收MSMQ消息了。刚刚分配了一个IP地址。

我需要能够使用特定网址将消息推送到队列中(在生产中不会被代理等阻止)。

问题是,MSMQ仅安装到“默认网站”。而我的微弱尝试将其安装在失败的地方。

  1. 将net.msmq和msmsq.formatname的绑定添加到'非默认网站',我将'绑定信息'用作'localhost',因为它适用于'默认网站'。
  2. 在非默认网站上创建了一个Web应用程序;指向同一文件夹(inetpub \ wwwrot \ msmq)。 [我想这是它无法正常工作的地方,应该如何“神奇地”工作?
  3. 我将net.msmq和msmsq.formatname协议添加到'web应用程序'我在'非默认'网站上调用了MSMQ。
  4. 以上步骤基本相同,我也是这样做的,因为运行这里找到的variouse脚本:http://channel9.msdn.com/shows/Endpoint/endpointtv-Screencast-Configuring-WAS-for-TCP-Endpoints/http://geekswithblogs.net/sathya/archive/2011/08/17/the-protocol-net.msmq-is-not-supported.aspx

    一切都没有快乐。

    我只需要使用特定域来接收我的msmq http消息,任何帮助都可以。

    PS,在生产中它还将在域上拥有SSL证书。 (在win server 2008 r2上)

1 个答案:

答案 0 :(得分:1)

我最终放弃了,实现了我的目标

  1. 使用http
  2. 卸载msmq
  3. 停止默认和'目标'网站(我实际上没有这样做,但应该有!)
  4. 进入IIS中的高级设置,将默认网站ID更改为“99”
  5. 进入IIS中的高级设置,将“目标”网站的网站ID更改为“1”
  6. 重新启动IIS / Server。
  7. 检查网站是否仍然有效!
  8. 添加带有http功能的MSMQ。
  9. 完成后,我在我想要的地方安装了MSMQ。

    注意:我必须手动将net.msmq和msmsq.formatname的绑定添加到“目标”网站。安装程序这次没有这样做(卸载也没有从'默认网站'中删除它们)。