智能体刷屏的背后,是 AI 应用拐点的来临?AICon 北京站议程重磅公布,50+ 硬核分享不容错过 了解详情
写点什么

NGINX 商业版添加对 HTTP/2 协议支持

  • 2015-09-22
  • 本文字数:1181 字

    阅读完需:约 4 分钟

日前,NGINX 公司宣布,其最新发布的商业版(NGINX Plus R7)已经支持 HTTP/2 协议。

HTTP/2 是目前最新的超文本传输协议标准,它在 2015 年 2 月 17 日通过,并于2015 年5 月以 RFC 7540 正式发表。相较于 HTTP 1.1,HTTP/2 提供了连接复用、HTTP 头压缩、请求 / 响应管线化等技术,能够大大降低请求延时,同时增加了服务器推送能特性。目前,主流浏览器都已经支持 HTTP/2 协议,大部分浏览器只支持基于传输层安全协议(Transport Layer Security, TLS)的 HTTP/2 协议实现。

早在一个月前,NGINX 为 NGINX 1.9.0 及以后版本提供了测试版补丁,实现对HTTP/2 协议的支持。最近发布的NGINX 商业版(NGINX Plus)已经对HTTP/2 协议完整支持。对于现有站点,如果需要增加HTTP/2 支持,对NGINX 配置文件修改非常小,同时对客户端没有感知。

NGINX Plus R7 可以同时兼容 HTTP 1.1 和 HTTP/2,这样的实现可以针对不同客户端浏览器对 HTTP 协议的支持程度,自动选择最优的访问方式。

在上图架构中,NGINX Plus 的地位相当于“HTTP/2 网关”。在前端,NGINX Plus 和客户端浏览器进行交互,如果客户端支持 HTTP/2 协议,则 NGINX Plus 就会使用 HTTP/2 协议。同时,NGINX Plus 会通过 HTTP 1.X 协议和后端应用进行交互。这样,后段应用不需要进行修改,就支持了对外提供 HTTP/2 服务。对于只支持 HTTP 1.X 协议的客户端,NGINX Plus 同样可以回退到 HTTP 1.X 协议,以提高兼容性。

由于 NGINX Plus 需要同时支持 HTTP/2 协议和 HTTP 1.X 协议,NGINX Plus 使用传输层安全协议中的下一代协议协商(Next Protocol Negotiation,NPN)扩展。当浏览器连接到 NGINX Plus 并进行传输层协议协商的时候,会提供自己支持的协议类型。如果浏览器声明自己支持 HTTP/2(提供的协议列表中包含 h2),在后续的应用层协议传输中,NGINX Plus 将使用 HTTP/2 协议。如果浏览器不支持 HTTP/2,甚至不支持 NPN 的时候,NGINX Plus 会降级到 HTTP 1.X 协议。

要在 NGINX Plus 中添加 HTTP/2 的支持,只需要在配置文件中进行简单的修改,即在 listen 命令中添加 http2 参数。需要注意的是,http2 参数必须和 ssl 参数同时出现,和大多数浏览器实现一样,NGINX Plus 中实现的 HTTP/2 协议,也是必须构建于传输层安全协议之上。一个简单的配置如下:

复制代码
server {
listen 443 ssl http2 default_server;
}

另外需要注意的是,NGINX Plus 的 HTTP/2 模块移除了对 SPDY 协议的支持。因此 NGINX 无法同时支持 HTTP/2 协议和 SPDY 协议。不过,Google 已经官方宣布将不再支持SPDY 协议,并计划于2016 年在Chrome 中移除SPDY 协议。


感谢郭蕾对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群)。

2015-09-22 19:003735

评论

发布
暂无评论
发现更多内容

阿里巴巴1688商品详情API返回值应用探索:电商数据驱动的市场趋势预测

技术冰糖葫芦

API Explorer API 接口 API 策略

【AI法官】人工智能判官在线判案?

AppBuilder

为什么说SD-WAN能省钱?

Ogcloud

SD-WAN 企业组网 SD-WAN组网 SD-WAN服务商 SDWAN

如何用Vue3构建一个交互式3D图

秃头小帅oi

从0到100:找搭子小程序开发笔记(一)

CC同学

第十二届双态IT用户大会·嘉为蓝鲸平台工程专题研讨会圆满落幕!

嘉为蓝鲸

DevOps BizDevOps 一体化运维

实力认可|心大陆多智能体入围“2024DIIRC大模型十大典范案例”服务商!

心大陆多智能体

德国电动汽车生产:欧洲第一,世界第二

财见

火山引擎视频云发布赛事直播方案,延时缩短至1s

新消费日报

低代码开发:智能财务系统开发应用

不在线第一只蜗牛

低代码

IPv6改造技术:隧道技术的原理和优缺点

国科云

时序数据库 IoTDB 构筑长安汽车海量车况数据管理新引擎,助力智能网联汽车发展

Apache IoTDB

人工智能ChatGPT的多种应用:如何更好地提问

霍格沃兹测试开发学社

嘉为蓝鲸监控中心:助力大型运营商解决烟囱工具式监控难题

嘉为蓝鲸

监控 运维工具 IT 运维

淘宝商品列表数据接口实战:构建实时比价系统

tbapi

淘宝商品列表数据接口 淘宝商品数据采集 关键词搜索淘宝接口

2024IT市场权威榜单发布!腾讯云TBDS斩获两大奖项!

腾讯云大数据

TBDS

推荐十个优秀的ASP.NET Core第三方中间件,你用过几个?

不在线第一只蜗牛

asp.net 后端 中间件

软件测试学习笔记丨Vue使用axios

测试人

Vue 软件测试 自动化测试 测试开发

利用 AI 机器学习,轻松实现化合物配比最优化解决方案

Altair RapidMiner

人工智能 机器学习 数据分析 大模型

2024 年 5 月区块链游戏研报:市值增长、玩家参与变迁、迷你游戏兴起

Footprint Analytics

链游

嘉为蓝鲸告警中心:助力大型保险集团实现告警规范管理

嘉为蓝鲸

告警体系 运维工具 IT 运维

从票务到游戏:Celestia 首届黑客松亮点项目盘点

TechubNews

如何用二维码进行来访登记?这个模板帮你轻松实现!

草料二维码

草料二维码 访客登记 来访登记 访客来访二维码 来访二维码

NGINX商业版添加对HTTP/2协议支持_语言 & 开发_金灵杰_InfoQ精选文章