IIS7 URL从根目录如何重定向到子目录?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (198)

我正在使用Windows Server 2008和IIS7。我需要重定向www.mysite.comwwww.mysite.com/menu_1/MainScreen.aspx。这里是我对这些项目的文件结构:

-Sites
 -Default Web Site
  -Menu_1
  -MenuService
  -VscWebService
提问于
用户回答回答于

将此代码添加到你的web.config文件中:

<system.webServer>
    <rewrite>
        <rules>
            <rule name="Root Hit Redirect" stopProcessing="true">
                <match url="^$" />
                <action type="Redirect" url="/menu_1/MainScreen.aspx" />
            </rule>
        </rules>
    </rewrite>
</system.webServer>

它将执行301永久重定向(URL将在浏览器中更改)。如果你想让这种“重定向”不可见(重写,内部重定向),那么使用这个规则(唯一的区别是“重定向”已被“重写”取代):

<system.webServer>
    <rewrite>
        <rules>
            <rule name="Root Hit Redirect" stopProcessing="true">
                <match url="^$" />
                <action type="Rewrite" url="/menu_1/MainScreen.aspx" />
            </rule>
        </rules>
    </rewrite>
</system.webServer>
用户回答回答于

我想,这可以在没有IIS URL重写模块的情况下完成。

<httpRedirect>支持通配符,所以你可以这样配置它:

  <system.webServer>
    <httpRedirect enabled="true">
      <add wildcard="/" destination="/menu_1/MainScreen.aspx" />
    </httpRedirect>
  </system.webServer>

请注意,你需要在IIS上启用“HTTP重定向”功能 - 请参阅HTTP Redirects

扫码关注云+社区

领取腾讯云代金券