在之前的文章中我介绍了如何通过配置 SSL 证书从而让网站实现 HTTPS 协议。经过配置后,网站就可以同时支持两种协议访问:
但现实用户访问某个网站时,都是习惯直接在浏览器中输入一个域名,然后回车访问。不会手动在域名前面加上 http:// 或者 https://。这样域名前面的部分都是由浏览器自动填充,但是当前所有浏览器默认填充的都是 http://。
我们可以借助 IIS 自带的 URL 重写功能,将所有来自 http 的请求都重定向到 https。
1,操作步骤
(1)在 IIS 管理控制台上选择需要配置的网站,双击“URL Rewrite”这个图标按钮。

(2)进入 URL 重写模块,点击右侧的“Add Rule(s)...”添加规则。
(3)入站规则选择第一项空白规则“Blank rule”
(4)然后对这条规则进行相关配置。
Name:随意起,比如我这里叫“redirect to HTTPS”
Pattern:(.*)
Conditions:新增一个条件。Input 为 {HTTPS},Pattern 为 ^OFF$
Redirect URL:https://{HTTP_HOST}/{R:1}
Redirect type:Permanent (301)
(5)设置完毕后点击右侧的“应用”,这个 URL 重写就配置完毕了。
2,测试
(1)我们打开浏览器,输入 www.jlasp.com 回车。
(2)发现网站会自动跳转到 https://www.hangge.com
(3)监听浏览器请求,我们也可以发现最初的 http 请求被重写返回成一个 https 请求(301 跳转)
转载请保留原文链接:https://www.hangge.com/blog/cache/detail_1885.html