Heroku Labs: Router 2.0 に対する HTTP/2 の無効化
最終更新日 2025年02月12日(水)
Table of Contents
Router 2.0 の Common Runtime アプリでは、HTTP/2 はデフォルトで有効になります。HTTP/2 をオプトアウトするには、Heroku Labs http-disable-http2
機能を有効にしてください。
Heroku Labs を通して追加された機能は実験的であり、変更される場合があります。
概要
Heroku Labs 機能を有効にすると、アプリへのリクエストでは HTTP/1.1 プロトコル、またはサポートされている場合は古い HTTP プロトコルが使用されます。
Router 2.0 でアプリの HTTP/2 を無効にする
デフォルトのプロトコルとして HTTP/2 の使用をオプトアウトするには、Heroku Labs 機能を有効にします。
$ heroku labs:enable http-disable-http2 -a <app name>
次の例のように、Heroku ルーターログの protocol
値を参照することで、アプリが HTTP/1.1 リクエストを受信していることを確認できます。
2024-10-25T16:01:10.881983+00:00 heroku[router]: at=info method=GET path="/" host=my-app.example.com request_id=370b21e2-7dec-1758-6a80-e21f155dd635 fwd="138.68.186.89" dyno=web.1 connect=0ms service=0ms status=200 bytes=0 protocol=http1.1 tls=true tls_version=tls1.3
Router 2.0 でアプリの HTTP/2 を有効にする
HTTP/2 を再度有効にするには、Heroku Labs 機能を無効にします。
$ heroku labs:disable http-disable-http2 -a <app name>
Router 2.0 での HTTP/2 の使用についての詳細は、HTTP/2 の考慮事項を参照してください。
次の例のように、Heroku ルーターログの protocol
値を参照することで、アプリが HTTP/2 リクエストを受信していることを確認できます。
2024-10-25T16:01:10.881983+00:00 heroku[router]: at=info method=GET path="/" host=my-app.example.com request_id=370b21e2-7dec-1758-6a80-e21f155dd635 fwd="138.68.186.89" dyno=web.1 connect=0ms service=0ms status=200 bytes=0 protocol=http2.0 tls=true tls_version=tls1.3