HTTP2をサポートするnginxをインストールしました。私の nginx はアプリケーション ロード バランサーの背後にあり、SSL ターミネーションは LB でのみ発生しています。
最初に以下のように HTTP2_PUSH を有効にしました。
http2_push_preload on;
location /mx {
http2_push https://example.com/css/style.css;
http2_push https://example.com/js/main.js
}
しかし、うまくいきませんでした。ブラウザーのデバッガーのネットワーク タブには、イニシエーターが "index" であると表示されていましたが、nghttp にも何も表示されませんでした。
私が試した別のアプローチは次のとおりです。
http2_push_preload on;
location /mx {
add_header Link "<https://example.com/css/style.css>; rel=preload; as=style,<http2_push https://example.com/js/main.js>; rel=preload; as=script";
}
次のアプローチでは、ネットワーク タブでイニシエーターを からindex
に変更しother
ましたが、nghttp ツールはサーバー プッシュが行われていないことを確認します。