2012-12-05 10 views
6

W naszym pliku web.config kontrolujemy 6 różnych międzynarodowych domen.IIS 7 Wiele domen Strona domowa Canonical Redirect

Jak wykonać następujące czynności z reguły 1:

Przekierowanie

  • www.1of6Domains.com/index.htm
  • www.1of6Domains.com/index.html
  • www .1of6Domains.com/default.asp
  • www.1of6Domains.com/default.aspx

do

  • www.1of6Domains.com

coś takiego?

<rule name="Canonical Redirect" enabled="true" stopProcessing="true"> 
    <match url="(.*)/(index.html|index.htm|default.asp|default.aspx)" /> 
    <conditions logicalGrouping="MatchAll" trackAllCaptures="false" /> 
    <action type="Redirect" url="{R:1}" /> 
</rule> 

Odpowiedz

2

pójdę z:

<rule name="Canonical Redirect" enabled="true" stopProcessing="true"> 
    <match url="^index.html$|^index.htm$|^default.asp$|^default.aspx$" /> 
    <action type="Redirect" url="/" /> 
</rule> 

Jeśli mówiąc www.1of6Domains.com znaczy każda domena może być inna, to działanie musi być (należy pamiętać, że zakłada zakaz ruchu HTTPS): <action type="Redirect" url="http://www.1of6Domains.com" />

EDIT: Oto zasady do obsługi wielu domen (jest to możliwe z jednej reguły, ale przepisać mapę musiałyby być tworzone, na pewno nie chcesz komplikacji):

<rule name="Canonical Redirect Non Https"> 
    <match url="^index.html$|^index.htm$|^default.asp$|^default.aspx$" /> 
    <action type="Rewrite" url="http://{HTTP_HOST}/" /> 
    <conditions> 
     <add input="{HTTPS}" pattern="^OFF$" /> 
    </conditions> 
</rule> 

<rule name="Canonical Redirect Https"> 
    <match url="^index.html$|^index.htm$|^default.asp$|^default.aspx$" /> 
    <action type="Rewrite" url="https://{HTTP_HOST}/" /> 
    <conditions> 
     <add input="{HTTPS}" pattern="^ON$" /> 
    </conditions> 
</rule> 
+0

Będzie 6 różnych domen przy użyciu tej samej reguły, więc będzie to musiało działać tak samo dla wszystkich z nich. – Brent