首页 > 运维 > nginx > 正文

怎么升级nginx支持HTTP/2服务端推送

WBOY
发布: 2023-05-13 21:25:13
转载
937 人浏览过

升级nginx到1.14.0

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

[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/7/$basearch/
gpgcheck=0
enabled=1
登录后复制

2、更新nginx

yum update
登录后复制

3、重启nginx

systemctl restart nginx
登录后复制

4、验证nginx版本

$ curl -i 127.0.0.1
http/1.1 301 moved permanently
server: nginx/1.14.0
登录后复制

修改nginx配置

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

location ~ \.php$ {
  # ...省略其他配置
  http2_push_preload on; # 加上这行
}
登录后复制

修改wordpress主题

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

link: </index.js>; as=script; rel=preload
登录后复制

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

link: </index.js>; as=script; rel=preload, ; as=style; rel=preload
登录后复制

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

function add_http2_push_header() {
  $preload_resource_array = array(
    &#39;</index.js>; as=script; rel=preload&#39;,
    &#39;</index.css>; as=style; rel=preload&#39;
  );
  $preload_link_value = join( &#39;, &#39;, $preload_resource_array );

  header( &#39;link: &#39;.$preload_link_value ); 
}
add_action( &#39;send_headers&#39;, &#39;add_http2_push_header&#39; );
登录后复制

浏览器验证

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

怎么升级nginx支持HTTP/2服务端推送

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

怎么升级nginx支持HTTP/2服务端推送 

以上是怎么升级nginx支持HTTP/2服务端推送的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:yisu.com
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!