IIS7 IIS8 http自动跳转到HTTPS(80端口跳转443端口)

服务器 发布日期:2024/12/30 浏览次数:1

正在浏览:IIS7 IIS8 http自动跳转到HTTPS(80端口跳转443端口)

IIS7需要先确认是否安装 “URL REWRITE2 ” 伪静态模块 , 如果您已经安装可以跳过

URL REWIRTE (伪静态模块)

下载地址 : http://www.iis.net/downloads/microsoft/url-rewrite

第一步: 选择站点, “URL 重写”,如果安装的是英文版的 应该是【Url rewrite】

IIS7 IIS8 http自动跳转到HTTPS(80端口跳转443端口)

第二步: 添加 “ 空白规则”

IIS7 IIS8 http自动跳转到HTTPS(80端口跳转443端口)

第三步:添加规则

名称 : HTTPS

匹配URL 模式: (.*)

添加条件: 条件: {HTTPS} 模式: off

操作类型选择:重定向

重定向URL: https://{HTTP_HOST}/{R:1}

IIS7 IIS8 http自动跳转到HTTPS(80端口跳转443端口)

然后保存即可

最后效果图

IIS7 IIS8 http自动跳转到HTTPS(80端口跳转443端口)

条件中的逻辑分组处理

首先参考上图中的逻辑分组信息。

输入 类型 模式 是否忽略大小写 备注 {HTTPS} 与模式匹配 ^OFF$ YES 此项用来匹配你的请求是HTTPS还是HTTP {HTTPS_HOST} 与模式不匹配 ^(localhost) YES 如果你是本地的localhost不会重定向到SSL

高级版(直接把伪静态添加到web.config)

<"1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="HTTP to HTTPS redirect" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTPS}" pattern="off" ignoreCase="true" />
</conditions>
<action type="Redirect" redirectType="Found" url="https://{HTTP_HOST}/{R:1}" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>