Redirect IIS重写-仅将一个主机名的根目录重定向到HTTPS?
我正在尝试将仅输入http://site.domain.com的用户重定向到https://site.domain.com 任何其他http页面都不应重定向到https(例如:) 我尝试过这种方法:Redirect IIS重写-仅将一个主机名的根目录重定向到HTTPS?,redirect,iis,https,Redirect,Iis,Https,我正在尝试将仅输入http://site.domain.com的用户重定向到https://site.domain.com 任何其他http页面都不应重定向到https(例如:) 我尝试过这种方法: <rewrite> <rules> <rule name="Redirect to HTTPS" enabled="true" patternSyntax="ECMAScript" stopProcessing="true
<rewrite>
<rules>
<rule name="Redirect to HTTPS" enabled="true" patternSyntax="ECMAScript" stopProcessing="true">
<match url="^$" ignoreCase="true" />
<conditions logicalGrouping="MatchAll">
<add input="{HTTPS}" pattern="^OFF$" />
<add input="{HTTP_HOST}" pattern="^site\.domain\.com$" />
</conditions>
<action type="Redirect" url="https://site.domain.com/" appendQueryString="false" redirectType="SeeOther" />
</rule>
</rules>
</rewrite>
或者这个:
<rewrite>
<rules>
<rule name="Redirect to HTTPS" enabled="true" patternSyntax="ECMAScript" stopProcessing="true">
<match url="(.*)" ignoreCase="true" />
<conditions logicalGrouping="MatchAll">
<add input="{HTTPS}" pattern="^OFF$" />
<add input="{HTTP_HOST}" pattern="^site\.domain\.com$" />
<add input="{PATH_INFO}" pattern="^$" />
</conditions>
<action type="Redirect" url="https://site.domain.com/" appendQueryString="false" redirectType="SeeOther" />
</rule>
</rules>
</rewrite>
但没有重定向发生。我遗漏了什么吗?
但我会尝试使用^$并尝试以下变体:
<rewrite>
<rules>
<rule name="Redirect to HTTPS" stopProcessing="false">
<match url="^$" />
<conditions>
<add input="{HTTPS}" pattern="off" ignoreCase="true" />
</conditions>
<action type="Redirect" url="https://{SERVER_NAME}/" redirectType="Permanent" />
</rule>
</rules>
</rewrite>