升级nginx支持HTTP/2服务端推送的方法

2025-05-26 0 38

内容概览

NGINX从1.13.9版本开始支持HTTP/2服务端推送,上周找时间升级了下NGINX,在博客上试验新的特性。

升级工作主要包括:

  1. 升级NGINX
  2. 修改NGINX配置
  3. 修改wordpress主题

升级NGINX到1.14.0

1、配置nginx官方的yum源。创建配置文件 /etc/yum.repos.d/nginx.repo ,写入如下内容

?

1

2

3

4

5
[nginx]

name=nginx repo

baseurl=http://nginx.org/packages/centos/7/$basearch/

gpgcheck=0

enabled=1

2、更新nginx

?

1
yum update

3、重启nginx

?

1
systemctl restart nginx

4、验证nginx版本

?

1

2

3
$ curl -I 127.0.0.1

HTTP/1.1 301 Moved Permanently

Server: nginx/1.14.0

修改NGINX配置

在原有的配置上,加上 http2_push_preload on; 。当nginx检测到 link 响应首部时,会主动往客户端推送资源。

?

1

2

3

4
location ~ \\.php$ {

# ...省略其他配置

http2_push_preload on; # 加上这行

}

修改WordPress主题

NGINX的 http2_push_preload 需要应用服务的配合。比如我要主动推送 index.js 这个文件,那么需要加上如下响应首部:

?

1
link: </index.js>; as=script; rel=preload

也可以同时推送多个文件,比如:

?

1
link: </index.js>; as=script; rel=preload, </index.css>; as=style; rel=preload

具体到WordPress,可以加上如下代码:

?

1

2

3

4

5

6

7

8

9

10
function add_http2_push_header() {

$preload_resource_array = array(

'</index.js>; as=script; rel=preload',

'</index.css>; as=style; rel=preload'

);

$preload_link_value = join( ', ', $preload_resource_array );

header( 'link: '.$preload_link_value );

}

add_action( 'send_headers', 'add_http2_push_header' );

浏览器验证

升级之前,不支持服务端推送

升级nginx支持HTTP/2服务端推送的方法

升级之后,支持服务端推送

升级nginx支持HTTP/2服务端推送的方法

相关链接

https://docs.nginx.com/nginx/admin-guide/installing-nginx/installing-nginx-open-source/#prebuilt_redhat

https://www.nginx.com/blog/nginx-1-13-9-http2-server-push/

http://nginx.org/en/docs/http/ngx_http_v2_module.html#http2_push_preload

https://developer.mozilla.org/en-US/docs/Web/HTML/Element/link

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持快网idc。

原文链接:https://www.chyingp.com/posts/upgrade-nginx-to-support-http2-server-push/

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

快网idc优惠网 建站教程 升级nginx支持HTTP/2服务端推送的方法 https://www.kuaiidc.com/53336.html

相关文章

发表评论
暂无评论