IIS网站redirect问题

我之前问过这个问题,我已经知道如何使用ISA Server 2006来实现这个function,我现在的问题是如何实现相同的function,而不使用ISA Server,但只使用纯IIS。 有没有人有任何想法?

我的开发/部署环境是IIS + Windows Server 2003/2008 + .Net + VSTS2008 + C#。 我有几个网站,他们每个人都有稳定和beta版本,例如,我有beta版本订单系统和稳定版本订单系统,购买系统一样。 我在4个不同的物理机器(机器名称labvm1,labvm2,labvm3和labvm4)上部署了4个系统。

我的要求是,我想有一个共同的URL模式来访问不同的系统,

http://www.mycorp.com/order/beta http://www.mycorp.com/order/stable http://www.mycorp.com/purchase/beta http://www.mycorp.com/purchase/stable 

但是由于这4个系统部署在4台不同机器/ DNS名称的不同物理机器上,我怎样才能将不同后缀的域名( http://www.mycorp.com )映射到不同的物理在线系统?

在此先感谢乔治

我认为这可以通过负载平衡来完成,但是实现起来似乎很痛苦。

理论上你也可以编写一个ISAPI请求转发器,或者购买一个像ISAPIReWrite 。

我会build议只做IISredirect,以便用户可以input漂亮的URL到达那里,但是然后他们被redirect到适当的机器。 或者我猜,框架是另一种select。

取决于你的要求…

如果您对执行代码并提供页面的IIS实例感到满意,请使用虚拟文件夹。 否则,你必须使用URL重写器,如ISAPIRewrite。

离子重写是一个免费的URL重写,效果很好…我已经用它在IIS上运行的许多Drupal网站…

我将有一个4台服务器托pipewww.mycorp.com站点,只需使用简单的htmlredirect到4个服务器的文件夹结构。

详细信息:您的4台服务器中的一台处理www.mycorp.com网站 – 可以使用IIS中的辅助网站设置映射到您服务器主IP的单独IP地址。

现在,在这个mycorp网站上,为您需要的4个站点(order-beta,order-stable,purchase-beta,purchase-stable)创build一个文件夹。 在这些文件夹的每一个文件夹中,您都放置一个index.html文件,其中包含一个将用户redirect到相应服务器的元刷新标记:

HTTP:// server1" 的>

这将给你一个单一的“起点”为您的文件夹结构,而阶梯能够承载这些应用程序在不同的服务器上。 而且它简单又便宜。

Ionic的ISAPI重写 (IIRF)是IIS(和免费)的一个很好的URL重写器,但是听起来好像OP想要一个HTTP代理。 IIRF可以重写或HTTP反向代理。 您需要IIRF 2.0版才能获得代理function。

这听起来像是一个URL重写的工作… Windows 2008有一个预打包的模块 ,它非常容易/强大… Windows 2003受益于URLRewriter等众多URL重写选项。