redirect根URL – IIS 7

我在我的网站http://ironnoob.com/forums上安装了一些论坛。

我的网站生活在C:\ IronNoob和我的论坛安装在C:\ IronNoob \论坛

我想要“ironnoob.com”和“www.ironnoob.com”做一个服务器端redirect到“ironnoob.com \ forums”。

我正在使用IIS 7,而且我是新来设置这个东西,所以我甚至不知道什么谷歌。 我知道我可以做一个客户端redirect与HTML,但我明白,服务器端redirect更好。 我已经想出了如何为IIS安装HttpRedirect模块,但是如果我在我的网站的根文件夹中设置了redirect到我的论坛文件夹,则在访问ironnoob.com时会出现循环redirect错误。

HTTPredirect设置:

  1. 根目录在ISS的“连接”窗格中select
  2. 选中“redirect到这个目的地的请求”
  3. 目的地= http://somesite.com/forums
  4. 选中“将所有请求redirect到确切位置”
  5. 选中“只将请求redirect到此目录中的内容(不是子目录)”
  6. 状态码:永久(301)

为什么当我告诉它不要时redirect子目录? 什么是正确的方法来做到这一点?

而不是使用HTTP redirect模块,您可以使用URL rewrite模块。

运行inetmgr命令并选择您的网站根目录。 打开URL rewrite配置:

URL重写配置

点击右侧面板上的Add a rule 。 入站规则中选择一个Blank rule规则:

空白规则

从这里你必须命名你的规则,并选择Does not match the pattern选项。 然后你必须设置Pattern (在这种情况下,这意味着一个不是以forums开头的URL将触发这个规则):

规则条件

最后一步是设置你的重定向。 Google可能会建议您使用301重定向:

重定向规则

点击右侧面板上的Apply ,你应该很好去。

注意:如果您的Redirect URL与您的Pattern不匹配,您将陷入一个无限循环(您可以通过简单地点击Test按钮来编写您的Pattern )来测试它。

这个模块的文档可在这里找到