如何在IIS上设置反向代理,允许host1.mydomain.com和host2.mydomain.com之间的跨主机通信?

时间:2012-04-03 18:52:59

标签: iis iis-7 cross-domain reverse-proxy mod-proxy

我在host1.mydomain.com/page_from_host1.jsp上有一个页面,在host2.mydomain.com/page_from_host2.html上有一个HTML页面。 host1是IIS7 / Tomcat框,host2是IIS7框。我想允许第一页提交一个显示第二页的表单,而URL不会改变。

即,URL为host1.mydomain.com/page_rom_host2.jsp,但页面内容来自host2.mydomain.com/page_from_host2.html。

我想我可以在IIS上设置反向代理来完成此操作,类似于mod_proxy,但是Apache Tomcat Server会对所有这些产生一些影响。如何设置反向代理以允许跨主机通信并屏蔽URL?

谢谢。

2 个答案:

答案 0 :(得分:6)

仅供参考,网址似乎在此处移动:

http://www.iis.net/learn/extensions/url-rewrite-module/reverse-proxy-with-url-rewrite-v2-and-application-request-routing

这是基本要点:

安装这两件事:

  • 申请请求路由
  • 网址重写模块

配置“应用程序请求路由”

  • IIS服务器节点 - >应用程序请求路由缓存
  • 服务器代理设置
  • 选中“启用代理”

然后可以根据需要配置URL重写模块。

答案 1 :(得分:1)

使用以下C#代码"启用代理"可以检查/启用

ServerManager servMgr = new ServerManager();
Configuration config = servMgr.GetApplicationHostConfiguration();
ConfigurationSection proxySection = config.GetSection("system.webServer/proxy");
proxySection["enabled"] = true;
servMgr.CommitChanges();