![a49d8989-aa11-eb11-8da9-e4434bdf6706.png](http://p01.5ceimg.com/content/a49d8989-aa11-eb11-8da9-e4434bdf6706.png)
https
我们在用谷歌浏览器打开网站的时候是否会看到地址栏前面那个不安全的感叹号,很是讨厌!如下图:
![a59d8989-aa11-eb11-8da9-e4434bdf6706.png](http://p03.5ceimg.com/content/a59d8989-aa11-eb11-8da9-e4434bdf6706.png)
http网站地址显示效果
![a69d8989-aa11-eb11-8da9-e4434bdf6706.png](http://p02.5ceimg.com/content/a69d8989-aa11-eb11-8da9-e4434bdf6706.png)
https网站地址显示效果
改造后的用户体验是不是更友好些呢?你是不是也有想把未改造前那个不安全的感叹号消掉呢?其实这样的改造并不是这样直观的感觉,其实很多时候我们是没感觉的,也看不到的,而实际的意义在于http比https的安全性更高。
2017年1月谷歌发布的Chrome 56浏览器开始把收集密码或信用卡数据的HTTP页面标记为“不安全”,若用户使用2017年10月推出的Chrome 62,带有输入数据的HTTP页面和所有以无痕模式浏览的HTTP页面都会被标记为“不安全”,此外,苹果公司强制所有iOS App在2017年1月1日前使用HTTPS加密。
小编最近把自己的官方网站从http升级到https,大家可以打开看下:www.dgjcwl.com;所以今天就和大家来说说https的事情。
1.https是什么?
HTTPS(全称:Hyper Text Transfer Protocol over Secure Socket Layer 或 Hypertext Transfer Protocol Secure,超文本传输安全协议),是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。简单理解:https比http更加安全,它是进行加密传输、身份认证的网络协议。
2.ssl是什么?
https比http就是多了一个ssl,ssl(Secure Socket Layer),为Netscape所研发,用以保障在Internet上数据传输的安全,利用数据加密(Encryption)技术,可确保数据在网络上的传输过程中不会被截取及窃听。已被广泛地用于Web浏览器与服务器之间的身份认证和加密数据传输。
3.如何免费部署https?
收费的这里就不说了。大家很多都对免费的感兴趣,大家很多都用阿里买的域名,今天就以阿里买的域名为例,看看如何部署?或者购买一些独享云虚拟主机都有免费SSL证书可以申请。
第一步:登录阿里云账号。在产品分类—安全—SSL证书栏目里进行免费申请。
![a79d8989-aa11-eb11-8da9-e4434bdf6706.png](http://p02.5ceimg.com/content/a79d8989-aa11-eb11-8da9-e4434bdf6706.png)
第二步:申请成功以后,通过域名解析或者下载验证文件认证,通过后提交阿里进行审核。阿里审核是很快的,我的一会儿就审核通过了。不得不佩服阿里云服务效率。
![a89d8989-aa11-eb11-8da9-e4434bdf6706.png](http://p03.5ceimg.com/content/a89d8989-aa11-eb11-8da9-e4434bdf6706.png)
第三步:根据自己空间的具体情况下载相应的证书文件。
![a99d8989-aa11-eb11-8da9-e4434bdf6706.png](http://p03.5ceimg.com/content/a99d8989-aa11-eb11-8da9-e4434bdf6706.png)
第四步:也是最重要的一步。不是说我们有了SSL证书就一定可以配置好,也得看具体情况。比如你是独立的服务器,这个你的权限比较大,还好些。特别是如果你买的虚拟空间,很多空间商懒的服务你这些设置,索性直接说不能或者要收费才行。所以在你服务商那边买空间的时候,这些最好都咨询清楚。
第五步:小编这里买的空间商,可以直接在后台设置。上传下载的证书即可。
![aa9d8989-aa11-eb11-8da9-e4434bdf6706.png](http://p04.5ceimg.com/content/aa9d8989-aa11-eb11-8da9-e4434bdf6706.png)
第六步:把原来的http做全站跳转同步到https。服务器环境不一样,配置的文件也不一样。
Linux主机
如果使用的是Linux主机,需要在你的网站根目录下的.htaccess文件(没有需要创建一个)中添加下面代码然后保存即可:
RewriteEngine OnRewriteCond %{SERVER_PORT} 80RewriteRule ^(.*)$ https://www.dgjcwl.com/$1 [R,L]
(你网站的域名替换上面的dgjcwl.com)
当然,如果想指定某一个文件使用https,则添加一下代码(此时.htaccess文件需要放在你指定的文件夹中):
RewriteEngine OnRewriteCond %{SERVER_PORT} 80RewriteCond %{REQUEST_URI} somefolderRewriteRule ^(.*)$ https://www.dgjcwl.com/somefolder/$1 [R,L]
(你网站的域名替换上面的dgjcwl.com)
Windows主机
Windows主机需要在网站根目录下的web.config文件中(没有需要创建,需要支持.NET),然后在该文件里面添加下面代码:
通过以上方式便可以实现http自动跳转到https(域名下所有页面),当然你第一次修改,肯定不会那么顺利的!可能会遇到某些文件打不开(开放权限)或者(以前添加的有些图片失效)等等,这些问题都要一一解决才行。
改造完成以后,我们就可以看到网址前面的那个绿色钥匙状的安全性标示。即代表安装成功。
如今的互联网大环境下,使用HTTPS对于网站安全所面临的网络流量劫持、搜索返回劫持等安全问题有很大的应对作用,也可以解决针对网络通道的劫持和恶意内容插入;现在很多大站基本都已经完成了https的改造,网络安全意识的不断增强,将来的网站都基本会加入https。