2009-06-24 35 views
1

我已經爲我們的靜態內容子域編寫了一些規則,以便當它們進入IIS時,它們被重定向到我們的www。子域。針對靜態內容域的IIS重定向規則

原因是我們有幾個子域名被谷歌索引。但是,當我創建網址時,我仍然可以在img1.mydomain.com上查看文件,狀態碼爲200,而不是我所期望的301。

我做錯了什麼?

<!-- Force img domains and non-www users to point at www. --> 
<rule name="redirectImgJsAndNonWww" stopProcessing="true"> 
    <match url=".*" /> 
    <conditions> 
    <add input="{HTTP_HOST}" pattern="^img1.mydomain.com$" /> 
    <add input="{HTTP_HOST}" pattern="^img2.mydomain.com$" /> 
    <add input="{HTTP_HOST}" pattern="^img3.mydomain.com$" /> 
    <add input="{HTTP_HOST}" pattern="^js1.mydomain.com$" /> 
    <add input="{HTTP_HOST}" pattern="^js2.mydomain.com$" /> 
    <add input="{HTTP_HOST}" pattern="^js3.mydomain.com$" /> 
    <add input="{HTTP_HOST}" pattern="^mydomain.com$" /> 
    </conditions> 
    <action type="Redirect" url="www.mydomain.com/{R:0}" redirectType="Permanent" /> 
</rule> 

非常感謝您的幫助。

更新:看來我錯過了logicalGrouping標誌,它將我的規則設置爲「MatchAll」。

<rule name="Redirect to WWW" stopProcessing="true"> 
    <match url=".*" /> 
    <conditions logicalGrouping="MatchAny"> 
    <add input="{HTTP_HOST}" pattern="^mydomain.com$" /> 
    <add input="{HTTP_HOST}" pattern="^img1.mydomain.com$" /> 
    <add input="{HTTP_HOST}" pattern="^img2.mydomain.com$" /> 
    <add input="{HTTP_HOST}" pattern="^img3.mydomain.com$" /> 
    <add input="{HTTP_HOST}" pattern="^js1.mydomain.com$" /> 
    <add input="{HTTP_HOST}" pattern="^js2.mydomain.com$" /> 
    <add input="{HTTP_HOST}" pattern="^js3.mydomain.com$" /> 
    </conditions> 
    <action type="Redirect" url="http://www.mydomain.com/{R:0}" redirectType="Permanent" /> 
</rule> 

回答

0

現在已經回答了這個問題。

看來我錯過了logicalGrouping標誌,它將我的規則設置爲「MatchAll」。

<rule name="Redirect to WWW" stopProcessing="true"> 
    <match url=".*" /> 
    <conditions logicalGrouping="MatchAny"> 
    <add input="{HTTP_HOST}" pattern="^mydomain.com$" /> 
    <add input="{HTTP_HOST}" pattern="^img1.mydomain.com$" /> 
    <add input="{HTTP_HOST}" pattern="^img2.mydomain.com$" /> 
    <add input="{HTTP_HOST}" pattern="^img3.mydomain.com$" /> 
    <add input="{HTTP_HOST}" pattern="^js1.mydomain.com$" /> 
    <add input="{HTTP_HOST}" pattern="^js2.mydomain.com$" /> 
    <add input="{HTTP_HOST}" pattern="^js3.mydomain.com$" /> 
    </conditions> 
    <action type="Redirect" url="http://www.mydomain.com/{R:0}" redirectType="Permanent" /> 
</rule>