近年来随着 Google、Apple、百度等公司不断推动 HTTPS 普及,全网 HTTPS 已是大势所趋。目前多数网站都已经支持 HTTPS 访问,但是在由 HTTP 转向 HTTPS 路程中,不少网站依然会面临很多问题。

通常用户准备访问某个网站时,不会在输入的域名前面加上 http:// 或者 https://,需要浏览器自动填充,而浏览器默认填充的都是 http://,需要网站采用 301/302 跳转的方式,由 HTTP 跳转到 HTTPS。 
 
301 跳转 
由于 301/302 跳转增加了浏览器与服务器的交互,增长用户访问与等待时间,会影响用户体验,并且跳转的过程容易发生劫持,遭受第三方攻击。

当用户访问到不安全的 HTTPS 网址时,浏览器虽然会提示用户访问的网站不安全,但是还是允许用户在了解安全风险之后继续访问,导致用户面临数据泄密的风险。 
 
HTTP 劫持 
 
网站不安全提醒

HSTS 强制开启 HTTPS 保障数据安全 
HSTS(HTTP Strict Transport Security,RFC6797),即 HTTP 严格安全传输,是国际互联网工程组织 IETF 正在推行一种新的 Web 安全协议。

网站采用 HSTS 后,用户访问时无需手动在地址栏中输入 HTTPS,浏览器会自动采用HTTPS 访问网站地址,从而保证用户始终访问到网站的加密链接,保护数据传输安全。同时只要浏览器曾经与服务器创建过一次安全连接,之后浏览器会强制使用 HTTPS,即使链接被换成了 HTTP。

当链接非 HTTPS 时,用户也无法忽略浏览器不安全提示,无法继续访问不安全链接,可以进一步保护用户的数据安全。 
 
链接不安全提醒

开启 HSTS 后,在 ssllabs 上进行测试,网站的安全等级会从A升级至A+ 
开启前等级为:A 
 
开启后等级变为:A+ 
Chrome、Safari、Firefox等浏览器都已经开始相继支持 HSTS,下图为各大浏览器对HSTS的支持情况(对于不支持的浏览器,又拍云会忽略此响应头,对用户的访问无影响): 
 
浏览器支持情况

总结 
对于那些安全性要求较高的网站,启用 HSTS 无疑是不错的选择。当用户访问网站域名时,都能够让用户使用 HTTPS 来请求网站资源,可以更加有效地保护网站和用户的数据安全,并且减少用户等待 301/302 的跳转时间,带来更好的用户体验。

又拍云 HTTPS 凭借全球200+节点及服务器,实现应用层通信加密访问,同时使用多种加速技术,减少HTTPS 延迟加载,通过对请求进行压缩、优先级排列等方式,降低网页加载时间。

来自:upyun.com

减少网站跳转时间,增强网站数据安全——HSTS 详解的更多相关文章

  1. virtualbox centos安装增强工具和问题详解

    virtualbox centos安装增强工具和问题详解 VirtualBox 大家都习惯性把它简称为 Vbox ,比 VM 的体积小.开源.速 度快.不过在使用 VirtualBox 在虚拟机中安装 ...

  2. 【eclipse插件开发实战】 Eclipse插件开发5——时间插件Timer开发实例详解

    Eclipse插件开发5--时间插件Timer开发实例详解 这里做的TimeHelper插件设定为在菜单栏.工具栏提供快捷方式,需要在相应地方设置扩展点,最后弹出窗体显示时间. 在上一篇文章里创建好了 ...

  3. 《手把手教你》系列技巧篇(三十八)-java+ selenium自动化测试-日历时间控件-下篇(详解教程)

    1.简介 理想很丰满现实很骨感,在应用selenium实现web自动化时,经常会遇到处理日期控件点击问题,手工很简单,可以一个个点击日期控件选择需要的日期,但自动化执行过程中,完全复制手工这样的操作就 ...

  4. https网站跳转到http网站时,referrer获取不到的问题

    工作中,有一个活动列表页A,要链接到具体的活动详情页B,A页面放在https网站上,B页面放在http网站上,从https跳转到http网站时,为了用户隐私安全信息,浏览器默认不传送referrer ...

  5. 实时监控、直播流、流媒体、视频网站开发方案流媒体服务器搭建及配置详解:使用nginx搭建rtmp直播、rtmp点播、,hls直播服务配置详解

    注意:这里不会讲到nginx流媒体模块如何安装的问题,只研究rtmp,hls直播和录制相关的nginx服务器配置文件的详细用法和说明.可以对照这些命令详解配置nginx -rtmp服务 一.nginx ...

  6. 《手把手教你》系列技巧篇(三十七)-java+ selenium自动化测试-日历时间控件-上篇(详解教程)

    1.简介 我们在实际工作中,有可能遇到有些web产品,网页上有一些时间选择,然后支持按照不同时间段范围去筛选数据.网页上日历控件一般,是一个文本输入框,鼠标点击,就会弹出日历界面,可以选择具体日期.这 ...

  7. Java SE之快速失败(Fast-Fail)与快速安全(Fast-Safe)的区别[集合与多线程/增强For](彻底详解)

    声明 特点:基于JDK源码进行分析. 研究费时费力,如需转载或摘要,请显著处注明出处,以尊重劳动研究成果:博客园 - https://www.cnblogs.com/johnnyzen/p/10547 ...

  8. 网站性能压力测试工具--apache ab使用详解

    ab是apache自带的压力测试工具.ab非常实用,它不仅可以对apache服务器进行网站访问压力测试,也可以对其它类型的服务器进行压力测试.比如nginx.tomcat.IIS等. 下面我们开始介绍 ...

  9. 时间序列分析算法【R详解】

    简介 在商业应用中,时间是最重要的因素,能够提升成功率.然而绝大多数公司很难跟上时间的脚步.但是随着技术的发展,出现了很多有效的方法,能够让我们预测未来.不要担心,本文并不会讨论时间机器,讨论的都是很 ...

随机推荐

  1. IDEA的安装

    https://blog.csdn.net/when_to_return/article/details/81590356

  2. php curl数据传输神器

    一.curl的概念: curl (Client Url Library Functions) 定义: curl is a command  line tool for transfering data ...

  3. h5本地缓存(localStorage,sessionStorage)

    H5本地存储数据 localStorage,sessionStorage的区别: 相同点:  缓存数据比cookie的范围大; localStorage:关闭浏览器数据不会消失,除非手动删除数据 se ...

  4. Java基础知识总结--final、finally、finalize的区别

    谈谈final.finally.finalize的区别 1.final修饰符:如果一个类被声明为final,意味着这个类不能再被派生出新的子类,不能作为父类被别的类继承.因此,一个类不能即被声明为ab ...

  5. 初次接触Jenkins遇到的几个问题

    1,Jenkins一直显示pending-Waiting for next available executor 网上已经提到的原因 1>,磁盘满了 2>,节点管理 刷新状态 我遇到的情况 ...

  6. ios开发中字符串的常用功能总结

    1.分割字符串 NSString * str1 = @"123/456"; NSArray * arr1 = [str1 componentsSeparatedByString:@ ...

  7. Linux之ssh登录

    作业三:ssh登录,scp上传.下载,ssh秘钥登录,修改ssh server端的端口为8888然后进行登录和scp测试 1.ssh登录 [root@localhost network-scripts ...

  8. 移动端适配问题px->rem方法

    移动端web页面适配问题 1.引入插件 github地址:https://github.com/re54k/mobileweb-utilities/blob/master/util/mobile-ut ...

  9. 【贪心】[hdu1052]Tian Ji -- The Horse Racing(田忌赛马)[c++]

    Tian Ji -- The Horse Racing Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java ...

  10. Spring mvc前台后台传值

    前台向后台传值: ①同名参数传递:form表单中提交input,Controller方法入参中,直接以同名参数获取 ②不同名参数传递:from表单提交input,Controller方法入参中需要使用 ...