Ich versuche, https und ein www-Präfix erzwingen. Meine Regel funktioniert jedoch nicht vollständig. Hier ist meine Regel:Web.config URL rewrite - erzwinge www prefix und https
<rewrite>
<rules>
<clear />
<rule name="Force https" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTPS}" pattern="off" ignoreCase="true" />
</conditions>
<action type="Redirect" url="https://www.mydomain.co.uk/{R:1}" redirectType="Permanent" />
</rule>
<rule name="Force www" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTP_HOST}" pattern="localhost" negate="true" />
<add input="{HTTP_HOST}" pattern="www.mydomain.co.uk" negate="true" />
</conditions>
<action type="Redirect" url="https://www.mydomain.co.uk/{R:1}" redirectType="Permanent" />
</rule>
</rules>
</rewrite>
- Es funktioniert zum Umleiten http auf https.
- es funktioniert, wenn ich zu https://mydomain.co.uk gehen (Umleitungen zu https://www.mydomain.co.uk)
- aber es funktioniert nicht, wenn ich jemand raten
Bitte zu https://mydomain.co.uk/blah/whatever gehen kann? Vielen Dank. Hier
Dank. Warum benutze 'stopProcessing =" true "'? Verhindert dies nicht, dass die folgenden Regeln verarbeitet werden? –
Ja, tut es. "_ Eine Regel kann das StopProcessing-Flag aktiviert haben. Wenn dieses Flag aktiviert ist, bedeutet dies, dass keine nachfolgenden Regeln mehr verarbeitet werden und die von dieser Regel erzeugte URL an die IIS-Anforderungs-Pipeline übergeben wird (wenn die Regel übereinstimmt). Standardmäßig ist dieses Flag deaktiviert._ "Siehe https://docs.microsoft.com/en-us/iis/extensions/url-rewrite-module/url-rewrit-module-configuration-reference – VDWWD
Das würde aber bedeuten wenn in der Anfrage sowohl das WWW-Präfix als auch das HTTPS-Protokoll fehlten. Das WWW-Präfix würde hinzugefügt werden, aber HTTPS würde nicht, weil keine Regeln mehr verarbeitet würden. –