在IIS7中重定向到www - 经典管道模式

时间:2010-12-14 23:19:18

标签: iis-7 redirect seo

我想在IIS7网络服务器上实现重定向。基本上,如果子域未包含在URL中,我将重定向到www子域。

http://mysite.com/file.aspx重定向到http://www.mysite.com/file.aspx

http://mysite.com/image.jpg重定向到http://www.mysite.com/image.jpg

http://mysite.com/text.html重定向到http://www.mysite.com/text.html

怎么做?

我不想编写任何HTTP模块 - 它必须通过IIS配置完成。

另外,我需要使用Classic Pipeline模式,不能安装任何ISAPI插件。

有可能吗?

2 个答案:

答案 0 :(得分:0)

您可以将其放入web.config文件中:

<configuration>
  <system.webServer>
    <rewrite>
      <rules>
        <rule name="Redirect to WWW" stopProcessing="true">
          <match url=".*" />
          <conditions>
            <add input="{HTTP_HOST}" pattern="^http://mysite.com$" />
          </conditions>
          <action type="Redirect" url="http://www.mysite.com/{R:0}" redirectType="Permanent" />
        </rule>
      </rules>
    </rewrite>
  </system.webServer>
</configuration>

在IIS7中,可以通过url rewrite部分完成。

答案 1 :(得分:0)

这个解决方案对我有用:

1)安装URL Rewrite组件:

http://www.iis.net/download/urlrewrite

2)添加到web.config:

<system.webServer>
 <rewrite>
  <rules>
   <rule name="CanonicalHostNameRule1" stopProcessing="true">
    <match url="(.*)" />
    <conditions>
     <add input="{HTTP_HOST}" pattern="^mysite\.com$" />
    </conditions>
    <action type="Redirect" url="http://www.mysite.com/{R:1}" />
   </rule>
  </rules>
 </rewrite>
</system.webServer>