Redirect IIS6-除了少数例外情况,如何将每个页面的用户重定向到另一个站点?

Redirect IIS6-除了少数例外情况,如何将每个页面的用户重定向到另一个站点?,redirect,iis-6,Redirect,Iis 6,我在IIS 6中设置了一个网站,比如说它叫 我已将此网站重定向到,该重定向维护目录结构和查询参数,如下所示: $S$Q-使用选项“上面输入的确切URL” 无论何时有人请求,这都非常有效,例如: 然后他们在: 现在,我有一个页面,实际上是一个处理程序,,我不想重定向它 它的语法是什么?我已经阅读了使用通配符的重定向部分,但是我不知道如何做一些简单的事情 请注意,image.axd是一个处理程序,因此我不能只“右键单击”它并设置重定向属性,因为它实际上不存在 在子文件夹中,我还有一些其他不想重定

我在IIS 6中设置了一个网站,比如说它叫

我已将此网站重定向到,该重定向维护目录结构和查询参数,如下所示:

$S$Q-使用选项“上面输入的确切URL”

无论何时有人请求,这都非常有效,例如:

然后他们在:

现在,我有一个页面,实际上是一个处理程序,,我不想重定向它

它的语法是什么?我已经阅读了使用通配符的重定向部分,但是我不知道如何做一些简单的事情

请注意,image.axd是一个处理程序,因此我不能只“右键单击”它并设置重定向属性,因为它实际上不存在

在子文件夹中,我还有一些其他不想重定向的页面,例如:

任何帮助都将不胜感激

编辑:一些人提到使用ISAPI_重写,对此我表示感谢,但我真的不想在网站配置中引入另一种复杂性。IIS似乎暗示我可以通过使用!和0到9个变量

使用IIS真的不可能做到这一点吗


我目前的解决方法是在所有我想重定向的文件夹和页面上设置重定向属性,但我不想重定向的文件夹和页面除外,但这是一个管理噩梦。

您可以为未找到的
页面实施自定义错误页面,为您执行重定向。您应该在IIS中关闭重定向。在自定义错误页中构建重定向的逻辑。然后配置您的网站,使404个错误重定向到您的错误页面。

如果您可以在IIS服务器上安装软件,我建议使用工具重写您的请求URL

对于iis6.0,我已经使用了它,它运行得非常好。它重量轻,可配置性强。有一个免费的“Lite”版本可以支持您的要求


您可以使用包含与HTTP请求匹配的规则的文本文件配置程序,然后编写规则匹配后要执行的操作。您的实例可能需要一个通用重定向规则(类似于IIS中的规则)和异常规则。

例如,您应该研究使用头重写模块的可能性。有一个免费的“lite”版本可以满足您的需要

这可以为您做的是:在服务器上执行实际页面之前,根据一组可配置的规则重写请求头(或发出HTTP 301/302重定向)。底层服务器会看到剩余的请求,就好像客户机真的以这种方式发出了请求一样

以下规则将保留
image.axd
请求,同时重定向其他所有请求

# image.axd stays unchanged ("L" is the "last rule" flag)
RewriteCond Host: www.\this\.com
RewriteRule ^.*?\bimage\.axd\b.* $0 [L]

# all requests that have not been stopped by an earlier rule
# end up here ("RP" is the "permanent redirect" flag)
RewriteCond Host: www.\this\.com
RewriteRule .* http://www.that.com$0 [RP,L]

嗨,卡尔,我刚开始研究这种重定向。。。我不确定在哪里输入这种参数化重定向。您是在IIS中还是直接在元数据库中执行此操作?或者在web.config中?我还使用了IIS6,Jacques考虑了他提到的不喜欢额外复杂性的更新问题,这确实是影响最小的解决方案。我自己实现的,很简单。只需让您的站点保持原样,并配置一个自定义404,在您需要的地方加载_redirect.asp即可。然后删除所有不想保留的文件。这些请求将使用自定义404重定向。