前一篇文章《IIS服务器变量浅谈之一:在重写规则中使用服务器变量》我对Windows 主机 IIS 服务器变量(Server Variables)做了粗浅的铺垫介绍。这篇文章主要介绍 HTTPS 变量。
想必大家对 http 是已经有所了解,网路上有很多关于https协议的介绍,好处自然不必多说,本博客也在最近升级为https。在试用IIS主机时,可以对IIS 服务的服务器变量HTTPS进行设置,以满足我们的多种要求。
当用户通过HTTP头请求时,可以有两种:以安全的HTTPS(SSL)方式请求,或者以HTTP方式发出请求,别为ON或OFF。
如何使用该变量?可以以下面的格式进行,因此可以使用其作为判断条件:
<add input="{HTTPS}" pattern="ON" />
或<add input="{HTTPS}" pattern="OFF" />
重定向应用举例:
- <rule name="Canonical Host Name (HTTP)" stopProcessing="true">
- <match url="(.*)" />
- <conditions logicalGrouping="MatchAny">
- <add input="{HTTPS}" pattern="OFF" />< !-- 以http形式发出请求 -- >
- <add input="{HTTP_HOST}" pattern="^example\.com$" />
- </conditions>
- <action type="Redirect" url="http://www.example.com/{R:1}" redirectType="Permanent" />< !-- 重定向到指定格式 -- >
- </rule>
- <rule name="Canonical Host Name (HTTPS)" stopProcessing="true">
- <match url="(.*)" />
- <conditions logicalGrouping="MatchAny">
- <add input="{HTTPS}" pattern="ON" />< !-- 以https形式发出请求 -- >
- <add input="{HTTP_HOST}" pattern="^example\.com$" />
- </conditions>
- <action type="Redirect" url="https://www.example.com/{R:1}" redirectType="Permanent" /> < !-- 重定向到指定格式 -- >
- </rule>
本文禁止住转载。任何形式转载请联系作者(时光在路上 www.timezls.com)。时光在路上保留所有权利