升級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( '</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服務端推送的詳細內容。更多資訊請關注PHP中文網其他相關文章!