我想创建重定向来强制https和删除www所以所有排列直接到https://mysite.co.uk
这是一个多站点Kentico系统,所以我只想重定向有问题的特定域。
这是我目前使用的,但它不起作用。任何帮助非常感谢。
<rewrite>
<rules>
<rule name="mysite https redirect">
<match url="^(mysite\.co.uk|www\.mysite\.co.uk)$" />
<conditions>
<add input="{HTTPS}" pattern="^OFF$" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}/{R:1}" redirectType="Permanent" />
</rule>
</rules>
</rewrite>
您可以在IIS外部执行此操作,并仅将其配置为站点。如果您查看“设置”>“URLS和SEO”(在您选择了要配置的站点,左上角)之后,您可以在那里进行这些更改,而无需使用IIS。
有一点需要确保将您网站的域设置为您要使用的主域。在你的情况下,mysite.co.uk。然后在站点的域别名中,添加条目www.mysite.co.uk。
接下来,在Pages应用程序中站点的根目录上,转到“属性”>“安全性”,然后在底部选择“需要SSL”。这将复制到网站中的所有页面。
我认为你需要2个单独的规则。检查此答案here:
<rule name="Remove WWW" enabled="true" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTP_HOST}" pattern="^(www\.)(ccsportal\.com)" />
</conditions>
<action type="Redirect" url="https://{C:2}/{R:1}" redirectType="Permanent" />
</rule>
<rule name="HTTP to HTTPS redirect" stopProcessing="true">
<match url="(.*)" />
<conditions logicalGrouping="MatchAll" trackAllCaptures="false">
<add input="{HTTPS}" pattern="off" ignoreCase="true" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}/{R:1}" redirectType="Permanent"/>
</rule>