すべてのプロダクト
Search
ドキュメントセンター

Alibaba Cloud Service Mesh:HTTPS が有効になっているイングレスゲートウェイで HTTP/2 を無効にする

最終更新日:Jan 13, 2025

クライアントが Hypertext Transfer Protocol Secure (HTTPS) を使用していて、HTTP/2 のサポートに制限があり、設定を変更してもこの問題を解決できない場合は、イングレスゲートウェイで HTTP/2 を無効にすることをお勧めします。このトピックでは、HTTPS が有効になっているイングレスゲートウェイで HTTP/2 を無効にする方法について説明します。

前提条件

ステップ 1:デフォルト設定を確認する

次のコマンドを実行してイングレスゲートウェイにアクセスし、Application-Layer Protocol Negotiation (ALPN) を介して HTTP/2 がネゴシエートされていることを確認します。

curl -k -H Host:b.aliyun.com --resolve b.aliyun.com:443:${IP address of the ingress gateway}  https://b.aliyun.com/status/418 -v

期待される出力:

7FBF9864-589F-4a62-BB78-E3ECF9C206C2.png

出力は、HTTP/2 と HTTP/1.1 の両方が ALPN を介してネゴシエートされていることを示しています。デフォルトでは、イングレスゲートウェイは優先的に HTTP/2 を使用します。

ステップ 2:HTTPS が使用されている場合に HTTP/2 を無効にする

  1. ASM コンソール にログインします。左側のナビゲーションペインで、[サービスメッシュ] > [メッシュ管理] を選択します。

  2. [メッシュ管理] ページで、ASM インスタンスの名前をクリックします。左側のナビゲーションペインで、[ASM ゲートウェイ] > [イングレスゲートウェイ] を選択します。

  3. [イングレスゲートウェイ] ページで、目的のゲートウェイを見つけ、[アクション] 列の [YAML] をクリックします。[編集] ダイアログボックスで、spec フィールドの podAnnotations パラメーターを設定し、[OK] をクリックします。

    podAnnotations:
        proxy.istio.io/config: |
          httpsHttp2Disabled: true
    説明

    この構成により、イングレスゲートウェイが再起動します。

ステップ 3:HTTPS が有効になっている間にイングレスゲートウェイで HTTP/2 が無効になっていることを確認する

次のコマンドを実行してイングレスゲートウェイにアクセスします。

curl -k -H Host:b.aliyun.com --resolve b.aliyun.com:443:${IP address of the ingress gateway}  https://b.aliyun.com/status/418 -v

期待される出力:

2.png

出力は、HTTP/1.1 のみが ALPN を介してネゴシエートされていることを示しています。これは、HTTP/2 が無効になっていることを意味します。