首先要明确我们的需求,比如我们的网站启用了SSL全站加密,那么默认浏览器进入的地址是:http://www.cmcloud.com ,我需要将http://www.cmcloud.com自动跳转到https://www.cmcloud.com 的入口中去,不然还是会有没加密的路径可以进行访问。
在同一个网站上要绑定http的80端口和https的443端口,如下图:

绑定端口
明确需求之后我们再来说下需要准备的工具和环境:
URL ReWrite工具,下载地址:
如果无法下载,可以去从Web Platform Installer里面进行安装吧。

Web Platform 下载界面
下载之后安装

Url 重写工具安装
安装之后,我们在IIS中就能看到重写Url的操作按钮了。

Url重写按钮
选择某一个站点中的URL重写,我们称之为单独的非全局配置。

添加入站规则
在右侧点击添加规则,然后选择空白规则,然后进行规则的配置。


添加条件


重定向
在操作属性中,重定向的URL:https://{HTTP_HOST}/{R:1} ,然后选中 附加查询字符串以及重定向类型为302 即可。
条件输入字符串中的值就是服务器变量,而具体使用哪些服务器变量则与匹配类型有关 这里我们挑选最常使用的匹配类型:与模式匹配。这种模式最常使用的服务器变量类型如下:QUERY_STRING、HTTP_HOST、SERVER_PORT、SERVER_PORT_SECURE、REQUEST_URI。 条件输入字符串的值为服务器变量 假设向下面的URL地址发送一个请求:https://csdn.net/Home/Index?page=1&tid=11,那么这些变量的含义如下:
1.QUERY_STRING 服务器变量所包含的是 page=1&tid=11这部分,表示URL的参数字符串 2.HTTP_HOST 服务器变量所包含的部分是shiyousan.com,表示所请求的主机域名 SERVER_PORT 3.服务器变量所包含的部分是 80,表示服务器的端口 SERVER_PORT_SECURE 4.服务器变量所包含的部分是0,HTTPS请求为OFF,表示接受请求的服务器端口是否为安全端口时,是为1,否则为0,一般来说如果是HTTPS请求则为安全端口,即为1,HTTPS为ON。 5.REQUEST_URI 服务器变量所包含的部分是/Home/Index?page=1&tid=11,就是除了主机域名外剩下的URL地址字符串和参数字符串。
