HTTPまたはHTTPSリスナーのカスタム転送ルールを作成できます。 HTTPまたはHTTPSリスナーは、指定された転送ルールに基づいてリクエストに対してアクションを実行します。 このトピックでは、転送ルールの仕組みについて説明します。 このトピックでは、転送ルールを作成および管理する方法についても説明します。

概要

転送ルールの種類

転送ルールは、デフォルト転送ルールとカスタム転送ルールに分類されます。
  • デフォルトの転送ルール: HTTPまたはHTTPSリスナーを作成すると、システムは自動的にデフォルトの転送ルールを作成し、デフォルトのエンドポイントグループに関連付けます。 リスナーには、デフォルトの転送ルールが1つだけあります。 デフォルトの転送ルールを変更または削除することはできません。
  • カスタム転送ルール: HTTPまたはHTTPSリスナーを作成した後、ビジネス要件に基づいてカスタム転送ルールを作成できます。 1つのリスナーに対して複数のカスタム転送ルールを作成できます。

転送ルールのコンポーネント

転送ルールには、条件とアクションが含まれます。 アクションは、指定された条件を満たすリクエストに対して実行されます。
  • HostPathHTTP HeaderHTTP Request MethodCookieSourceIPQuery Stringの条件がサポートされています。
  • 次のタイプのアクションがサポートされています: 転送リダイレクトReturn Fixed ResponseRewriteAdd Header、およびRemove Header
説明 7月12日以降に作成されたGlobal Accelerator (GA) インスタンスのみが、すべての種類の条件とすべての種類のアクションをサポート2022ます。 2022年7月12日より前に作成されたGAインスタンスの場合、HostおよびPathタイプの条件を設定し、Forwardタイプのアクションを設定できます。 他のタイプの条件とアクションはデフォルトでは使用できません。 他の種類の条件とアクションを使用する場合は、チケットを起票してインスタンスをアップグレードしてください。

リクエストと転送ルールの照合方法

リクエストの照合方法
  1. リクエストがカスタム転送ルールの条件に一致する場合、転送ルールで指定されたアクションが実行されます。
  2. リクエストがカスタム転送ルールの条件と一致しない場合、リクエストはデフォルトの転送ルールに基づいてデフォルトのエンドポイントグループに転送されます。

前提条件

転送ルールの作成

指定された条件を満たすリクエストに対して指定されたアクションを実行する転送ルールを作成するには、次の手順を実行します。

  1. Global Acceleratorコンソールにログインします。
  2. [インスタンス] ページで、管理するGAインスタンスを見つけ、[操作] 列の [リスナーの設定] をクリックします。
  3. [リスナー] タブで、管理するリスナーを見つけ、リスナーのIDをクリックします。
  4. リスナーの詳細ページで、[転送ルール] をクリックします。
  5. [転送ルール] タブで、[転送ルールの追加] をクリックし、次のパラメーターを設定し、[OK] をクリックします。
    項目 説明
    Name 転送ルールの名前を入力します。
    If (すべての条件に一致) 条件のタイプを選択します。 [転送ルールの追加] をクリックすると、複数の条件を追加できます。
    • ホスト: 1つ以上のドメイン名を入力します。 転送ルールには、タイプがHostの条件を1つだけ含めることができます。 条件には複数のドメイン名を指定できます。 指定されたドメイン名のいずれかが一致すると、転送ルールがトリガーされます。

      例: * .example.com

    • パス: 1つ以上のパスを入力します。 転送ルールには、タイプがPathの複数の条件を含めることができます。 複数のパス条件間の論理関係はORです。 [パス] 条件では、複数のパスを指定できます。 複数のパス間の論理関係はORである。

      たとえば、URLがwww.example.com/test/test1?x=1&y=2の場合、パラメーターを /test/* に設定できます。

    • HTTPヘッダー: keyフィールドにHTTPヘッダーのキーを入力し、valueフィールドにHTTPヘッダーの値を入力します。 複数の値を設定できます。 転送ルールで複数のHTTPヘッダー条件を作成できます。 HTTPヘッダータイプの複数の条件間の論理関係はANDです。 各HTTPヘッダーキーは一意である必要があります。 各HTTPヘッダー条件で複数のHTTPヘッダー値を設定でき、各値は一意である必要があります。

      例: キー: user-agent 値: * Mozilla/4.0 *

    • HTTPリクエスト方法: HTTPリクエスト方法を選択します。 有効な値: HEADGETPOSTOPTIONSPUTPATCHDELETE。 転送ルールには、HTTPリクエストメソッドタイプの条件を1つだけ作成できます。 1つの条件で複数のHTTPリクエストメソッドを指定できます。 複数のHTTPリクエストメソッド間の論理関係はORです。
    • Cookie: 1つ以上のCookieを入力します。 Cookieタイプの複数の条件を作成できます。 複数のCookie条件間の論理関係はANDです。 Cookie条件では、複数のキーと値のペアを指定できます。 複数のキーと値のペア間の論理関係はORです。

      例: key: value

    • SourceIP: 1つ以上のIPアドレスまたはCIDRブロックを入力します。 転送ルールにSourceIP条件を1つ作成できます。 1つの条件で複数のIPアドレスまたはCIDRブロックを指定できます。 複数のIPアドレスまたはCIDRブロックの論理関係はorです。

      IPアドレスの例: 1.1.XX.XX/32 CIDRブロックの例: 2.2.XX.XX/24

    • クエリ文字列: 1つ以上のクエリ文字列を入力します。 転送ルールには、クエリ文字列タイプの複数の条件を作成できます。 クエリ文字列型の複数の条件間の論理関係はANDです。 クエリ文字列型の条件で複数のキーと値のペアを指定できます。 複数のキーと値のペア間の論理関係はORです。

      たとえば、URLがwww.example.com/test/test1?x=1&y=2の場合、パラメーターをx: 1またはy: 2に設定できます。

    仮想エンドポイントグループに転送 アクションの種類を選択します。 [アクションの追加] をクリックすると、複数のアクションを追加できます。
    説明
    • 転送ルールには、転送リダイレクト、またはReturn Fixed Responseタイプのアクションを1つだけ含めることができます。
    • 転送ルールに [書き換え][ヘッダーの追加] 、または [ヘッダーの削除] タイプのアクションが含まれている場合は、転送ルールに [転送] タイプのアクションを設定する必要があります。 Forwardアクションの前に、Rewrite、Add Header、またはRemove Headerアクションを実行する必要があります。
    • 転送: 宛先仮想エンドポイントグループを選択します。
    • リダイレクト: プロトコルステータスコードホストポートパス、および検索パラメーターを設定します。 [プロトコル][ホスト][ポート][パス] 、および [クエリ] を同時に空のままにしたり、パラメーターにデフォルト値を同時に使用したりすることはできません。
    • Return Fixed Response: [Response Status Code][Response Content Type][Response Content] パラメーターを設定します。
    • 書き換え: [ドメイン名][パス][検索] パラメーターを設定します。
    • [ヘッダーの追加]: [キー] フィールドにHTTPヘッダーキーを入力し、[値] フィールドにHTTPヘッダー値を入力します。 指定されたヘッダーは、リクエストのヘッダーを上書きします。 異なる [ヘッダーの追加] アクションのHTTPヘッダーキーは一意である必要があり、[ヘッダーの削除] アクションのキーとは異なる必要があります。
    • Remove Header: HTTPヘッダーキーを入力します。 異なる [ヘッダーの削除] アクションのHTTPヘッダーキーは一意である必要があり、[ヘッダーの追加] アクションのキーとは異なる必要があります。
  6. 複数の転送ルールを追加する場合は、[新しいルールの追加] をクリックします。

関連する操作

操作 説明
転送ルールの変更 [転送ルール] タブで、管理する転送ポリシーを見つけ、右上隅に表示される変更アイコンの上にポインターを移動し、転送ポリシーを変更して、[保存] をクリックします。
説明 デフォルトの転送ルールは変更できません。
転送ルールの優先度の変更

ルールは優先度の高い順に評価されます。 値が小さいほど、優先度が高くなります。 カスタム転送ルールの優先度を変更できます。 デフォルトの転送ルールの優先度は変更できません。

[転送ルール] タブで、転送ルールを見つけて目的の位置までドラッグし、右上隅にある [優先度の変更を保存] をクリックします。

転送ルールの削除

転送ルールの削除

  1. [転送ルール] タブで、削除する転送ルールを見つけ、ポインタを右上隅に移動して、右上隅にある削除アイコンをクリックします。
  2. 表示されるメッセージで、転送ルールのIDを確認し、[OK] をクリックします。

転送ルールの削除

  1. [転送ルール] タブで、削除する転送ルールを選択し、右上隅の [削除] をクリックします。
  2. 表示されるメッセージで、転送ルールのIDを確認し、[OK] をクリックします。
説明 デフォルトの転送ルールは削除できません。

指定された仮想エンドポイントグループへのリクエストの転送

webアプリケーションは2つのサーバーにデプロイされ、ドメイン名example.comexample.netを使用してサービスを提供します。 GAは、アプリケーションへのアクセスを高速化し、ユーザーエクスペリエンスを向上させるために使用されます。

GAでHTTPSリスナーを作成し、デフォルトのエンドポイントグループを追加し、デフォルトの証明書をリスナーに関連付けることができます。 このようにして、example.com向けのリクエストはデフォルトのエンドポイントグループに転送されます。 次に、仮想エンドポイントグループを追加し、追加の証明書をリスナーに関連付けてから、example.net向けのリクエストを指定された仮想エンドポイントグループに転送するホスト転送ルールを作成します。

次の図は、ホストタイプの転送ルールを設定する方法を示しています。 仮想エンドポイントグループへのリクエストの転送
説明 HTTPS経由で複数のドメイン名へのアクセスを高速化するために複数の証明書と転送ルールを設定する方法の詳細については、「t2229909.html#task_2022760」をご参照ください。

HTTP リクエストを HTTPS へリダイレクトする方法

セキュリティを向上させるために、WebサイトはHTTPからHTTPSに切り替わります。 ただし、既存のユーザーはHTTPを使用してWebサイトにアクセスできない場合があります。 この例では、GAでリダイレクト転送ルールを作成し、301リダイレクトを使用してHTTPリクエストをHTTPSにリダイレクトできます。

次の図は、リダイレクトタイプの転送ルールを設定する方法を示しています。 リダイレクトリクエスト数

参考資料