2016-04-24 13 views
0

Ich führe einen Online-Dienst, wo ich kürzlich einen AWS Load Balancer hinzugefügt habe.IIS Rewrite - Hinzufügen von WWW, aber nicht zu Subdomains

Vorher lief alles auf Domänen ohne www, aber aufgrund der AWS ELB kann seine IP ändern, müssen wir das Setup mit CNAME-Datensätzen anstelle von A-Datensätzen ausführen. CNAME-Datensätze können nicht auf die Stammdomäne verweisen. Also muss ich alles auf www umschreiben.

Wir haben mehrere Kunden und etwa 50% von ihnen verwenden ihre eigene Domain, der Rest läuft als Subdomain zu unserer Hauptdomain.

Was ich brauche, ist:

example.com -> www.example.com 
www.example.com -> www.example.com 
customer1.ourdomain.com --> customer1.ourdomain.com 
customer2.ourdomain.com --> customer2.ourdomain.com 

Ich bin nicht der beste in Regeln für IIS Rewrite in web.config einrichten, aber ich hoffe, dass mir jemand auf die richtige Lösung zeigen kann.

Früher sind wir damit gelaufen, um www zu entfernen, aber jetzt brauche ich das Gegenteil.

<rule name="Remove www" stopProcessing="true"> 
     <match url="(.*)" ignoreCase="true" /> 
     <conditions logicalGrouping="MatchAll"> 
     <add input="{HTTP_HOST}" pattern="^www\.(.+)$" /> 
     </conditions> 
     <action type="Redirect" url="http://{C:1}/{R:0}" appendQueryString="true" redirectType="Permanent" /> 
    </rule> 

Alles läuft http (für jetzt).

Antwort

0
<rule name="Add www"> 
     <match url="(.*)" /> 
     <conditions> 
     <add input="{HTTP_HOST}" pattern="^ourdomain\.com" /> 
     </conditions> 
     <action type="Redirect" url="http://www.{HTTP_HOST}{UNENCODED_URL}" redirectType="Permanent" /> 
    </rule>