2015-09-09 13 views
7

Próbuję zaimplementować dwie reguły dla IIS, aby przekierować nie-WWW na WWW i http na https.Przekierowania IIS nie-www na www AND http do https

http://zzz.com -> https://www.zzz.com 
http://www.zzz.com -> https://www.zzz.com 
https://zzz.com -> https://www.zzz.com 

Więc dodałem to do mojego web.config:

<system.webServer> 
<rewrite xdt:Transform="Insert"> 
    <rules> 
    <rule name="Force WWW" enabled="true"> 
     <match url="(.*)" /> 
     <conditions> 
     <add input="{HTTP_HOST}" pattern="^[^www]" /> 
     </conditions> 
     <action type="Redirect" url="https://www.zzz.com/{R:1}" appendQueryString="true" redirectType="Permanent" /> 
    </rule> 
    <rule name="Force HTTPS" enabled="true"> 
     <match url="(.*)" /> 
     <conditions> 
     <add input="{HTTPS}" pattern="off" /> 
     </conditions> 
     <action type="Redirect" url="https://www.zzz.com/{R:1}" appendQueryString="true" redirectType="Permanent" /> 
    </rule> 
    </rules> 
</rewrite>  

Moje pytanie:

Czy istnieje jakiś sposób, aby połączyć to w jedną regułę?

Odpowiedz

11

Tak, można połączyć je w jeden i użyć LogicalGrupowanie dla warunków i ustawić na Dowolny, który byłby odpowiednikiem "OR". Na przykład:

<rule name="Force WWW and SSL" enabled="true" stopProcessing="true"> 
    <match url="(.*)" /> 
    <conditions logicalGrouping="MatchAny"> 
     <add input="{HTTP_HOST}" pattern="^[^www]" /> 
     <add input="{HTTPS}" pattern="off" /> 
    </conditions> 
    <action type="Redirect" url="https://www.zzz.com/{R:1}" appendQueryString="true" redirectType="Permanent" /> 
</rule> 
+0

Działa. Dziękuję Ci! –

+0

Witam, kiedy próbuję tego dla własnego problemu wygraj 2012 IIS 8, gdy próbuję przejść do https://example.com/, to błędy. http://example.com przechodzi do https://www.example.com i example.com, ale https://example.com prowadzi mnie tylko do strony tej nie można uzyskać serwer DNS example.com nie znaleziono. Spróbuj: Odświeżenie strony Sprawdzanie połączenia Sprawdzanie proxy, zapory i konfigurację DNS ERR_NAME_NOT_RESOLVED – MonkeyMagix

+0

mam setup 4 powiązań na drodze 1 z www dla HTTP i HTTPS i jeden bez www – MonkeyMagix

Powiązane problemy