0

我有一个要求,我想检查请求标头,并据此将传入的请求转发到我公司的适当子域。

例如:

请求标头 A 来了,然后它总是去 a.domain.com(无论请求来自 a.domain.com 还是 b.domain.com)

同样,请求标头 B 即将到来,然后它总是转到 b.domain.com。

虽然我可以通过更改我的应用程序(检查其中的请求标头)然后转发请求来做到这一点,但我希望它不是请求到达应用程序服务器,而是应该首先由 Web 服务器处理。

是否有可以处理 IIS 和 Apache 的可用东西(比如 CGI),因为我的公司在这两个上都有托管应用程序的子域。

任何帮助是极大的赞赏。谢谢

4

1 回答 1

1

在 Apache 中,您可以使用 mod_rewrite 将请求定向到另一个域,可能类似于以下内容:

rewriteEngine on
rewriteBase /
rewriteCond %{HTTP_HOST} ^A$
rewriteRule ^(.*) http://a.domain.com/$1 [L,R=301]

这需要通过将其放在适当目录或站点配置元素中的 .htaccess 文件中来适当地确定范围。

IIS(取决于版本)也支持重写模块。对于 IIS 6,您可以查看语法类似于 mod_rewrite的IIRF 。对于 IIS 7,请查看URL 重写模块,它有一个简单的 GUI,可以导入 mod_rewrite 规则。

于 2009-11-07T07:51:05.850 回答