web.config中的子域url-rewrite

时间:2014-12-10 10:15:36

标签: url-rewriting url-redirection

这就是我目前想要将我的网站重定向到

的方式

当我尝试导航到

 http://sub1.sitename.com it should redirect to sitename.com/newprojects/sub1

和sub2相同

我尝试使用它,但它最终加载www.sitename.com

<rewrite>
    <rules>
  <rule name="Redirect" stopProcessing="true">
        <match url="^sub1\.sitename\.com$" ignoreCase="true" />
        <action type="Redirect" url="sitename\.com/newprojects/sub1/" redirectType="Permanent" />
  </rule>
  <rule name="Redirect1" stopProcessing="true">
         <match url="^sub2\.sitename\.com$" ignoreCase="true" />
         <action type="Redirect" url="sitename\.com/newprojects/sub2/" redirectType="Permanent" />   </rule>
    </rules>
</rewrite>

1 个答案:

答案 0 :(得分:1)

您可以尝试匹配所有网址,然后根据您要重定向的内容进行过滤。

<rewrite>
    <rules>
        <rule name="sub1 redirect" stopProcessing="true">
            <match url="(.*)" />
            <conditions>
                <add input="{HTTP_HOST}" pattern="^sub1\.site\.com(/)?$"/>
                <add input="{PATH_INFO}" pattern="^/newprojects/sub1/" negate="true" />
            </conditions>
            <action type="Rewrite" url="\newprojects\sub1\{R:0}" />
        </rule>
    </rules>
</rewrite>

这对我有用。