使用URL重写允许1个IP地址承载两个子域

时间:2011-06-14 17:30:49

标签: iis url-rewriting

我有一个场景,我需要两个不同的子域来通过防火墙并被重写或重定向到服务器上的区域。例如,如果我在外部输入了sub1.mydomain.com/testsub1.html,我希望它能够点击IIS“默认网站/ folders / sub1 / testsub1.html”,同样,如果我有sub2.mydomain.com/testsub2.html收到我想要它去“默认网站/文件夹/ sub2 / testsub2.html”。我们被告知URL Rewritew将是这样做的方式。因此,我们在默认网站中设置规则,以使用MatchURL模式: 1. sub1.mydomain.com(。)并将其重写为“默认网站/文件夹/子1(R:1)”,其操作类型为“重写”。 2. sub2.mydomain.com(。)并将其重写为“默认网站/文件夹/子2(R:1)”,其操作类型为“重写”。

如果我点击http://sub1.mydomain.com/testsub1.html,我会收到找不到文件的错误。我在日志中看到的是GET /testsub1.html。如果我将URL更改为http://sub1.mydomain.com/folders/sub1/testsub1.html,它可以正常工作,我会在日志中看到GET /folders/sub1/testsub1.html,并在浏览器中显示正确的页面。

如果没有完整的路径,我缺少什么才能完成这项工作?

1 个答案:

答案 0 :(得分:1)

绑定是处理此问题的最佳方法。他们可以使用相同的IP地址侦听不同的主机名。在IIS中创建两个单独的网站,并为该特定子域配置它们的每个绑定。

更多信息:http://blogs.technet.com/b/chrad/archive/2010/01/24/understanding-iis-bindings-websites-virtual-directories-and-lastly-application-pools.aspx