2012-04-14 40 views
12

Tôi có gói lưu trữ được chia sẻ với Windows Server 2008 và IIS7.5 và có mô-đun viết lại Microsoft đã được cài đặt và bật.Mô-đun viết lại Microsoft - Buộc www trên url Hoặc xóa www khỏi url

<rewrite> 
    <rules> 
     <rule name="myRule" patternSyntax="Wildcard"> 
      <!--Rewriting code--> 
     </rule> 
    </rules> 
</rewrite> 

Vì vậy, làm thế nào để chuyển hướng mydomain.com/everywhere-in-site/my-page.html để www.mydomain.com/everywhere-in-site/my-page.html với Microsoft viết lại mô-đun?

Và điều gì xảy ra nếu tôi muốn chuyển hướng www.mydomain.com/everywhere-in-site/my-page.html đến mydomain.com/everywhere-in-site/my-page.html?

Trả lời

32

Để tháo www từ một tên miền và chuyển hướng đến một "miền khỏa thân" bạn có thể di nó như trong đoạn mã sau:

<rewrite> 
    <rules> 
    <rule name="Remove WWW prefix" stopProcessing="true"> 
     <match url="(.*)" ignoreCase="true" /> 
     <conditions> 
     <add input="{HTTP_HOST}" pattern="^www\.yourdomain\.com$" /> 
     </conditions> 
     <action type="Redirect" url="http://yourdomain.com/{R:1}" redirectType="Permanent" /> 
    </rule> 
    </rules> 
</rewrite> 

Và cách khác xung quanh (nếu bạn thích đó) để chuyển hướng không phải www đến một với www:

<rewrite> 
    <rules> 
    <rule name="Add WWW prefix" stopProcessing="true"> 
     <match url="(.*)" ignoreCase="true" /> 
     <conditions> 
     <add input="{HTTP_HOST}" pattern="^yourdomain\.com$" /> 
     </conditions> 
     <action type="Redirect" url="http://www.yourdomain.com/{R:0}" redirectType="Permanent" /> 
    </rule> 
    </rules> 
</rewrite> 

Tất nhiên, redirectType="Permanent" là tùy chọn nhưng dành cho SEO và hầu hết các trường hợp tôi muốn giới thiệu.

Hãy xem thêm những câu hỏi SO/câu trả lời:

+2

Câu trả lời này hình ảnh thu nhỏ như thế nào SO nên. Cảm ơn Martin. – pimbrouwers

Các vấn đề liên quan