每天分享最新软件开发,Devops,敏捷,测试以及项目管理最新,最热门的文章,每天花3分钟学习何乐而不为,希望大家点赞,加关注,你的支持是我最大的动力。
最近,谷歌 Chrome 103发布了一系列新功能。其中一个值得注意的特点是引入了 HTTP状态码103。本文将通过一个快速演示深入研究 HTTP103状态代码。
从 Mozilla Developer Network 的网络文档来看,HTTP 103早期提示是信息响应状态代码,主要用于链接头,允许用户代理在服务器还在准备响应时开始预载资源。
以下是 RFC 链接以获得更多详细信息。
HTTP103可以通过使用 link rel = preload 配置 HTTP 头字段来优化页面速度。
通常,当浏览器发送一个请求时,服务器会在不到一秒钟的时间内接收并处理该请求,然后发送一个 HTTP200OK 响应,如下所示。
然而,使用 HTTP103早期提示,还有提高页面呈现速度的空间。
一旦服务器使用 HTTP 103功能进行了更新,当浏览器发送一个请求时,如果服务器知道内容需要 style.css、 script.js 等资源,那么它将使用 HTTP 103早期提示响应向浏览器提示(响应)以预加载内容,如下所示。
然后,一旦服务器处理完整的响应,它将向浏览器发送普通的 HTTP200OK。
当浏览器预先加载内容时,这个过程将有助于提高页面呈现速度。
如上所述,此功能需要对服务器进行更新。如需更新 Apache HTTP Server,请点击这里进行配置。
早期提示仅适用于 HTTP/2和 HTTP/3。
它只支持200、301和304响应返回代码。
此外,它工作在具有预连接或预加载重载类型的响应链接头上。
为了演示 HTTP103早期提示,我在 AWS 上部署了一个带有 Ubuntu 映像的 EC2实例。我用 HTTP/2和 SSL 安装了 Apache HTTP Server。
这是我的 conf 文件内容。
H2Push on
H2EarlyHints on
下面是演示页面的 curl 输出:
正常 HTTP 200 OK
让我们在 conf 文件中配置 H2PushResource 并重新加载服务器。
H2Push on
H2EarlyHints on
H2PushResource /main.css
使用 sudosystemctl 重新启动 apache2命令重新启动 apacheserver。
下面是启用 HTTP103EarlyHint 特性后的 curl 输出。
HTTP 103早期提示
如上所述,服务器的第一个响应是 HTTP/2103,将 main.css 预加载到浏览器,然后服务器将用 HTTP 200作出响应。
下面是服务器响应时间部分。
服务器响应时间
正如您了解到的,HTTP103早期提示通过提示浏览器预加载资源来帮助优化页面呈现时间。它还解决了这里概述的 HTTP/2服务器推送的主要问题。Cloudflare 还致力于利用机器学习使早期提示更加智能。我们祈祷吧。
留言与评论(共有 0 条评论) “” |