HTTP/2 Server Push

nginx1.13.12が使えるようになってたのでServer Pushを有効にしてみたけどすでに十分速かったのでほとんど変わらない。

Lighthouse

Lighthouseの結果はこのくらいに。

そもそも前回は測定方法が悪かった。拡張機能とかが少ない別ユーザーの環境で測定しないと余計なエラーが出る。

PageSpeed Insightsも99点にはできたけど実際の表示速度が速いなら数字だけの点数を追求しても意味がない。

プラグイン

前に使ってたプラグインが急にWordPress公式から削除された。https://github.com/o10n-x/wordpress-css-optimization/issues/4

とりあえず今はこれを使っているけど他のプラグインが作ったJS/CSSはPushしてないのでもう少しプラグインを探す。https://ja.wordpress.org/plugins/http2-server-push/

composerで管理できないけどこっちを試し。しかしまさかのプラグインを有効化しただけでエラー。ローカルでは問題ないので原因は不明。https://github.com/tarosky/http2-server-push-preload

現在はLiteSpeed Cache。Server Push以外にも色々な機能を含むキャッシュプラグインで無駄な機能も多いけど仕方ない。これなら他のプラグインが連結したJS/CSSファイルもPushできたのでAutoptimize+LiteSpeed Cacheの組み合わせ。https://ja.wordpress.org/plugins/litespeed-cache/

nginxの設定

http2_push_preload on;を追加するだけ。

AWS ACM+ELB

Server Pushにはhttpsが必須。ACMでhttps対応している場合nginxがhttpsと認識してないからかServer Pushが有効にならない。何か方法がないかは調査中。