我正在build立一个安装了URL Rewrite模块的Win 2012 / IIS 8 Web服务器来replace现有的Web服务器。
它将有3个高度使用的网站映射到不同的域名。
我遇到的问题是,我有许多遗留域(~20)需要redirect(301)不同的这些网站和外部网站。
1)我可以使用服务器级定义的URL重写规则来创build这些redirect
要么
2)我可以创build一个附加站点,并使用主机名绑定将所有这20个左右的名称绑定到该站点,然后在该站点内使用 – URL重写规则
要么
3)还有什么更高效的?
我倾向于选项2,因为我猜测站点名称绑定比对所有传入请求评估URL重写规则更有效 – 而URL重写规则只有在匹配的主机名进来时才被评估。在现有的日志中,传统URL的stream量<1%
如果使用1),则所有的请求(甚至是有效的站点)都必须由url重写模块处理。 如果你有一大堆规则,就会增加每个请求的处理时间。
如果使用2),那么主站点尚未处理的请求将由重写模块处理。 这是可取的。
第三个select是,仍然有20多个网站。 每个原始网站一个。 然后,对于每个站点,只有针对特定站点的重写规则列表要小得多。
即使这个选项需要更长的时间来设置(脚本是你的朋友),它应该是最快的,因为你让http.sys在内核模式下决定什么对每个请求,它将请求路由到正确的网站。 那么你的重写规则就没有什么工作要做了。