转发主机头

我有一个关于在networking内部转发hostheader的问题。

我的设置是这样的: – 在前面我有一个Linksys路由器 – 在路由器后面我有3-4个testingwebservers不同的设置 – 我在一个Windows环境

我想要做的,是通过路由器到不同服务器的子域/ CNAME。 例如。 我有“website1.domain.com”和“website2.domain.com”,我希望website1转发到我的testwebserver 1和website2转发到我的testwebserver 2。

在我目前的设置中,我可以在路由器中完成,但是我只处理端口,所以结果是端口80上的所有stream量都必须到一台服务器。 这是一个问题,因为我一次只能展示一个Web服务器。

我想如果我可以在Windows服务器上安装一些软件,所有stream量都通过,所以很容易设置新的转发。

任何人有任何投入?

问候托马斯

有一个Windows(IIS)的第三方软件,除了其他的东西,这个工作非常好: ISAPI重写 。

ISAPI重写是一个基于正则expression式的强大的URL操作引擎。 它的行为大部分是Apache的mod_Rewrite,但是专门为微软的Internet信息服务器(IIS)devise的。 ISAPI重写是一个用纯C / C ++编写的ISAPIfilter,因此速度非常快。 ISAPI_Rewrite使您可以自由地超越标准的URLscheme并开发自己的scheme。

我用它在我们的服务器上用于不同的目的,它工作得很好。 search“代理”。 这是RewriteProxy规则的文档 。

编辑:

你可以使用这些规则

RewriteCond %{HTTP_HOST} ^mydomain.com$ RewriteProxy ^(.*) http://local-server-ip/appdir-for-domain/$1 [H,A,L] RewriteCond %{HTTP_HOST} ^myotherdomain.com$ RewriteProxy ^(.*) http://local-server-ip/appdir-for-otherdomain/$1 [H,A,L] 

或者像这样的东西:

 RewriteCond %{HTTP_HOST} ^mydomain.com$ RewriteProxy ^(.*) http://mydomain.com.intranet$1 [H,A,L] RewriteCond %{HTTP_HOST} ^myotherdomain.com$ RewriteProxy ^(.*) http://myotherdomain.com.intranet$1 [H,A,L] 

在那里抛出Apache,使用mod_proxy转发到任何你喜欢的地方。

如果你想坚持MS的东西,然后ISA服务器可以做到这一点。 这是一个昂贵的解决scheme,虽然有时你可以在ebay上以合理的价格findISA。 避免ISA 2000,这是裤子,并使用ISA 2004或ISA 2006。

或者,任何反向代理都可以这样做。 一个便宜和可靠的解决scheme将是SQUID,虽然configuration似乎对我们的Windows chaps不必要地曲折。 我用过SQUID,效果很好。

JR