2012-04-26 147 views
1

我试图做301重定向,因为我已经改变了域名。使用Windows Server和IM在web.config中添加以下规则。多个web.config重定向规则

<rule name="redirectDomain" stopProcessing="true"> 
        <match url="(.*)" /> 
        <action type="Redirect" url="http://replacement-cost.net/{R:1}" redirectType="Permanent" /> 
        <conditions logicalGrouping="MatchAny"> 
         <add input="{HTTP_HOST}" pattern="^(www.)?windshield-replacement-cost\.org$" /> 
        </conditions> 
       </rule> 

这是工作确定,所以只要所有页面都在新网站上相同的名称和文件结构的......除了那就是老域的根页面。现在在http://replacement-cost.net/windshield-replacement-cost

是否有可能编写另一个规则来重定向仅根?而有第二个规则重定向所有其他网页?可能是某种执行顺序?

东西acheive相同的结果,因为这基本上是

如果ruleURLISROOT =真>转到http://replacement-cost.net/windshield-replacement-cost

其他

与代码重定向上述

任何帮助,将不胜感激。它花了我很长时间才得到这个!由于

回答

4

这是应该的现有规则

<rule name="redirect Root Domain" stopProcessing="true"> 
    <match url="^$" /> 
    <conditions logicalGrouping="MatchAll" trackAllCaptures="false"> 
     <add input="{HTTP_HOST}" pattern="^(www.)?windshield-replacement-cost\.org$" /> 
    </conditions> 
    <action type="Redirect" url="http://replacement-cost.net/windshield-replacement-cost" /> 
</rule> 

此之前添加新的规则是你的现有规则

<rule name="redirectDomain" stopProcessing="true"> 
    <match url="(.*)" /> 
    <conditions logicalGrouping="MatchAny" trackAllCaptures="false"> 
     <add input="{HTTP_HOST}" pattern="^(www.)?windshield-replacement-cost\.org$" /> 
    </conditions> 
    <action type="Redirect" url="http://replacement-cost.net/{R:1}" redirectType="Permanent" /> 
</rule> 
+0

完美 - 你的先生是一个传奇! – loveforfire33 2012-04-27 00:29:23