Windows Server IIS7/8/10通过web.config 使http访问强制跳转到https
[重要通告]如您遇疑难杂症,本站支持知识付费业务,扫右边二维码加博主微信,可节省您宝贵时间哦!
上一篇我们介绍了使用web.config的方式来使http访问强制跳转到https,其实我们可以用IIS设置的方式也是可以的,
现在我们用IIS设置操作一遍,也是使用web.config 同理
配置IIS7-IIS10 伪静态web.config 实现http重定向跳转HTTPS(包括不带www跳转到带www)(点我即可打开)
我们现在设置IIS,具体操作以下,IIS伪静态软件请上一篇文章中找百度网盘的下载即可;
首先安装伪静态软件,重启服务器,然后打开IIS,
双击“URL重写”,在右边窗体中选择“添加规则”,并添加一个空白规则,如下所示:
添加以下规则,填写规则名称:Redirect to https,使用正规表达式,模式填写 (.*),然后接下来选择添加条件。第一个填{HTTPS} 与模式匹配 ^OFF$ ,
第二个填{HTTPS_HOST} 与模式不匹配 ^(localhost) 。如图所示:(黄色部分是需要填写或选择的部分)
继续填写未填写完成的部分,操作类型选择重定向,然后选择属性为https://{HTTP_HOST}/{R:1} 重定向类型选择303,如下所示:
点击右边空体上方的“应用”。
添加http_host条件,如下所示:
最后确定完成所有设定,实际上上面的文件是改变了web.config的配置文件内容或者直接在网站根目录新建web.config 粘贴如下代码进去,保存即可,和上面效果一个样
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="http redirect to https" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTPS}" pattern="^OFF$" />
<add input="{HTTPS_HOST}" pattern="^(localhost)" negate="true" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}/{R:1}" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
PS:
相关资料
- OpenSSL下载:http://gnuwin32.sourceforge.net/packages/openssl.htm
- SSL证书在线工具:https://csr.chinassl.net/
- 免费证书在线申请:https://freessl.org/
问题未解决?付费解决问题加Q或微信 2589053300 (即Q号又微信号)右上方扫一扫可加博主微信
所写所说,是心之所感,思之所悟,行之所得;文当无敷衍,落笔求简洁。 以所舍,求所获;有所依,方所成!
测试一下评论邮件
@晒太阳的蛤蟆: 测试回复邮件
@晒太阳的蛤蟆: 再测试一下哈!
@晒太阳的蛤蟆: 还需要再测试一下!
@晒太阳的蛤蟆: 这个测试一下回复邮件!
@晒太阳的蛤蟆: 测试回复继续测试@
测试评论带网址!!!