还是上次使用的Derwer.com,因为腾讯云提供了一年免费的TrustAsia DV SSL证书,由赛门铁克(Symantec)顶级根证书签发,亚洲诚信(TrustAsia)提供技术支持,据说价值1900/年。不过谁知道呢,先用着再说。
配置证书
配置IIS中的域名证书很简单,在这里也简要提一下。
导入证书
先是选着IIS服务,注意是IIS服务,不是站点,然后在右侧的安全性中选择服务器证书,点击导入,将提供的域名证书选中,若申请时填写了密码,这里也要加上,然后点击确定就OK了!
https绑定
接着打开站点,在右侧选择绑定,在弹出的界面添加上https的绑定,记得不要忘记填写主机名。点击确定之后,带不带HTTPS都可以访问了。
但是抱着“既然有了https,为什么还要用户访问http的安(zhuang)全(bi)意(xin)识(tai)”,于是就想着有没有办法实现https自动跳转呢?首先的想法就是URL重写。
URL重写
下载URL重写组件
IIS是带有URL重写功能组件的,但是并没有集成到IIS中去,要自行下载安装。在这里提供一个官方的下载链接
点击下载后安装很简单,在此略过,CMD执行iisreset重启IIS服务。
URL重写就出现在管理面板了,这里需要注意: 是网站的管理面板,不是IIS的管理面板! 是网站的管理面板,不是IIS的管理面板! 是网站的管理面板,不是IIS的管理面板! 重说三,某人就因为在错误的地方进行操作吐槽了半天发现是自己错了。 URL重写有自己的规则,大家参照一下我的实例,具体可以参考IIS的官方使用说明书
添加规则
双击URL重写, 在右侧点击添加规则,选择空白规则,确定。
编辑规则
设置规则名称,设置匹配URL,注意模式输入:(.*)
添加不匹配条件
先添加一个HTTP_HOST
的不匹配条件
注意:是与模式不匹配,模式为:^(localhost)
添加一个匹配条件
注意:是与模式匹配,模式为:^OFF$
配置重写操作
最后配置重写操作,按照图上实例选择填写。
应用 重启
右侧应用,然后重启站点。完成!
通过浏览器的监听,我们能发现,请求的http被重写返回了一个https。通过URL重写让IIS实现HTTPS的自动跳转就实现了。实际上上面的文件是改变了web.config
的配置文件内容从而实现了自动跳转。