HTTP2基础教程-读书笔记(三)

前面两篇记录了

迁移HTTP/2说简单无非就是升级到支持 h2 的Web服务器或在你的网站前面加上支持 h2 的CDN。这对没有历史包袱或实验性的产品当然是对的,但实际情况并非如此。多数站点是从 HTTP/1一路走来的,所以得考虑向前兼容。即考虑的情况如下或者更多:

  • 用户使用的浏览器对 h2 的支持情况
  • Web服务器对 h2 的支持情况
  • 迁移到TLS 的可能性
  • 网站上的第三方资源
  • 如何兼容旧版本客户端
  • 网站基于 h2 的优化(以后和 h2 性能篇一起讲)

浏览器对 h2 的支持

在升级 h2 之前,要先查看自己用户使用的浏览器对 h2 支持情况的数据,下面是 caniuse.com 官网的数据:

这些浏览器的数据一般是从自己统计平台或者第三方平台获取,比如:百度统计、友盟等。

Web服务器对 h2 的支持

在权衡之后,决定升级。首先要对当前站点使用的服务器进行改造,那我们就要考虑现在使用的服务器有对应的版本支持 h2 吗以及当前的业务允许我们去升级到对应版本吗?下面列出了一些服务器对 h2 的支持:

迁移到TLS

因所有的主流浏览器只能访问基于 TLS 的 h2,所以在升级的时候同样要保证对 TLS 的支持。增加对 TLS 的支持需要考虑如下问题:

  • 了解当前在使用的Web服务器:每种服务器配置 HTTPS 的方式略有差异
  • 获得证书:获取渠道有自签名证书、从Let's Encrypt获取和花钱购买
  • 保护私钥
  • 为增加的服务器负载做准备:增加TLS的支持,同时也增加了一些消耗,比如:握手时间、加解密时间等。优化的宗旨就是:复用之前的连接,减少握手和加解密的时间
  • 紧跟潮流:安全是不断变化的世界,紧跟变化很重要
  • 定期检测:定期使用工具检测 TLS 配置(https://www.ssllabs.com)

网站的第三方资源

第三方资源对我们来说有时很重要,就像上面说的浏览器统计数据等。有时这些数据对公司的技术决策,甚至业务发展都有帮助。可又因为第三方资源相对独立,我们没有办法对其操控,所以在升级 h2 的时候需要考虑如下问题:

  • 第三方资源是否支持 HTTPS?
  • 是否有计划支持 h2 ?
  • 是否对性能优化,作为关键考量指标?

第三方资源对页面性能的影响举足轻重,需要多加考虑。

如何兼容旧版本客户端

有些用户不喜欢尝试新鲜事物,所以你的用户中可能会存在使用旧版本客户端的,但这些用户又是你的金主但迁移到 h2 又势在必行,那如何解决呢?提供 HTTP/1的备用站点,供旧版本客户端访问并给出版本升级的提示。

个人总结

新技术是美好的,但升级之路并不是一帆风顺

原文发布于微信公众号 - 前端黑板报(FeHeiBanBao)

原文发表时间:2018-02-10

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏网站漏洞修补

网站快照被劫持 标题描述被篡改成博彩内容的解决方法

三年前用dedecms织梦系统,帮公司设计了一个网站,平常的网站更新,以及优化也都是我在负责,前段时间发现网站的流量越来越少,用爱站站长工具查看了一下,竟然发现...

2765
来自专栏Timhbw博客

xiunoBBS(修罗)设置SMTP邮件的发送

2017-08-2013:45:49 发表评论 346℃热度    前言 今天准备搭建一个论坛,用于用户交流。世纪搭建使用之后,决定使用xiuno BBS,界...

1K6
来自专栏Android 开发学习

android 逆向 初级系列(二)

2173
来自专栏布尔

后rtx集成时代

基本结构:客户端向服务器发送命令(如给目标rtx号码发送提醒、短信、访问组织和用户信息等)。 ? 1.首先要把原生API做一个基础接口封装,将RTXSDK内部的...

21610
来自专栏ThoughtWorks

应用敏感信息的6个配置原则|洞见

无论是微服务还是单体应用,往往都会用到很多配置信息。在众多的配置信息中,有一类非常敏感,例如数据库账号密码、API Key、Service Account等。由...

2946
来自专栏沈唁志

Kindle 怎么使用电子邮件附件推送电子书到设备中?

之前买过 PHP 的书看,结果也没看到了几本,一是书都在家里,没给公司带,二是下班晚回去不想看了

3713
来自专栏性能与架构

CC攻击的原理与防护

什么是CC攻击 CC攻击(Challenge Collapsar)是DDOS(分布式拒绝服务)的一种,是一种常见的网站攻击方法,攻击者通过代理服务器或者肉鸡向...

1.4K5
来自专栏Python中文社区

反爬虫机制和破解方法汇总

什么是爬虫和反爬虫? 爬虫:使用任何技术手段,批量获取网站信息的一种方式。 反爬虫:使用任何技术手段,阻止别人批量获取自己网站信息的一种方式。 ? 常见的反...

3.1K9
来自专栏私有云搭建

可道云私有云kodexplorer在蒲公英应用中心使用教程

蒲公英X5-3353在固件ROM2.22.1在云管理页面的【应用中心】中新嵌入了KOD功能,它是基于Web的在线文档管理器,下面看看如何使用KOD功能:

5143
来自专栏马洪彪

spss C# 二次开发 学习笔记(四)——Spss授权

Spss的授权方式有两种,单机版和网络版。 Spss的激活,在联网的情况下,通过20位的激活码激活,在未联网的情况下,Spss根据机器获取一个类似4-XXXX的...

3739

扫码关注云+社区

领取腾讯云代金券