リスナーの転送ルールを作成します。ドメイン名やパスなどのリクエスト属性、または HTTP ヘッダーや Cookie などのリクエストに含まれるデータに基づいてトラフィックを配信および処理する必要がある場合、リスナーのカスタム転送ルールを設定できます。リスナーは、転送ルールに基づいてアクセスリクエストに対して異なる転送操作を実行します。
操作説明
この操作を呼び出して転送ルールを作成する前に、転送ルールの原理とマッチングルールを理解しておくことを推奨します。詳細については、「転送ルール」をご参照ください。
この操作を呼び出す際は、以下の点にご注意ください。
-
CreateForwardingRules は非同期操作です。リクエストを送信すると、システムは転送ルール ID を返しますが、転送ルールはまだ作成されていません。作成タスクはバックグラウンドで引き続き実行されます。 ListForwardingRules を呼び出して、転送ルールのステータスをクエリできます。
-
転送ルールのステータスが configuring の場合、転送ルールは作成中です。この状態では、クエリ操作のみを実行できます。
-
転送ルールのステータスが active な場合、転送ルールは作成済みです。
-
-
CreateForwardingRules は、同じ Alibaba Cloud Global Accelerator (GA) インスタンス内での転送ルールの同時作成をサポートしていません。
今すぐお試しください
テスト
RAM 認証
|
アクション |
アクセスレベル |
リソースタイプ |
条件キー |
依存アクション |
|
ga:CreateForwardingRules |
create |
*Listener
*Accelerator
|
なし | なし |
リクエストパラメーター
|
パラメーター |
型 |
必須 / 任意 |
説明 |
例 |
| RegionId |
string |
必須 |
Alibaba Cloud Global Accelerator (GA) インスタンスのリージョン ID。値を ap-southeast-1 に設定します。 |
cn-hangzhou |
| ClientToken |
string |
任意 |
リクエストのべき等性を確保するために使用されるクライアントトークン。 クライアントを使用してトークンを生成できますが、異なるリクエスト間でトークンが一意であることを確認する必要があります。トークンには ASCII 文字のみを使用できます。 説明
このパラメーターを指定しない場合、システムは自動的に RequestId の値を ClientToken の値として使用します。RequestId の値は、各 API リクエストごとに異なります。 |
02fb3da4**** |
| AcceleratorId |
string |
必須 |
Alibaba Cloud Global Accelerator (GA) のインスタンス ID。 |
ga-bp17frjjh0udz4q**** |
| ListenerId |
string |
必須 |
リスナーのインスタンス ID。 |
lsr-bp1s0vzbi5bxlx5**** |
| ForwardingRules |
array<object> |
必須 |
転送ルールの構成。 |
test |
|
array<object> |
任意 |
転送ルールの構成。 |
||
| Priority |
integer |
任意 |
転送ルールの優先度。 有効な値: 1 ~ 10000。値が小さいほど優先度が高くなります。 |
1 |
| RuleConditions |
array<object> |
必須 |
転送条件のリスト。 |
|
|
array<object> |
任意 |
転送条件のリスト。 |
||
| RuleConditionType |
string |
任意 |
転送条件のタイプ。有効な値:
|
Host |
| RuleConditionValue |
string |
任意 |
転送条件タイプに対応する値。 RuleConditionType の値に基づいて、異なる JSON 文字列値を渡します。
|
["www.example.com", "www.aliyun.com"] |
| PathConfig |
object |
任意 |
パスの構成。 説明
このパラメーターは推奨されません。転送条件の設定には RuleConditionType と RuleConditionValue を使用してください。 |
|
| Values |
array |
任意 |
パス構成。 パスは 1 ~ 128 文字で、先頭にスラッシュ (/) が必要です。英字、数字、ドル記号 ($ )、ハイフン (-)、アンダースコア (_ )、ピリオド (.)、プラス記号 (+)、スラッシュ (/)、アンパサンド (&)、チルダ (~)、アットマーク (@)、コロン (:)、アポストロフィ (') を含めることができます。ワイルドカードとしてアスタリスク (*) および疑問符 (?) を使用できます。 説明
このパラメーターは非推奨です。ルール条件の構成には、RuleConditionType および RuleConditionValue を使用することを推奨します。 |
|
|
string |
任意 |
パス構成。 パスは 1 ~ 128 文字で、先頭にスラッシュ (/) が必要です。英字、数字、ドル記号 ($ )、ハイフン (-)、アンダースコア (_ )、ピリオド (.)、プラス記号 (+)、スラッシュ (/)、アンパサンド (&)、チルダ (~)、アットマーク (@)、コロン (:)、アポストロフィ (') を含めることができます。ワイルドカードとしてアスタリスク (*) および疑問符 (?) を使用できます。 説明
このパラメーターは非推奨です。ルール条件の構成には、RuleConditionType および RuleConditionValue を使用することを推奨します。 |
/test |
|
| HostConfig |
object |
任意 |
ドメイン名の構成。 説明
このパラメーターは推奨されません。転送条件の設定には RuleConditionType と RuleConditionValue を使用してください。 |
|
| Values |
array |
任意 |
ドメイン名構成。 説明
このパラメーターは非推奨です。ルール条件の構成には、RuleConditionType および RuleConditionValue を使用することを推奨します。 |
|
|
string |
任意 |
ドメイン名。ドメイン名は 3 ~ 128 文字で、英字、数字、ハイフン (-)、ピリオド (.) を含めることができます。ワイルドカードとしてアスタリスク (*) および疑問符 (?) を使用できます。 説明
このパラメーターは非推奨です。ルール条件の構成には、RuleConditionType および RuleConditionValue を使用することを推奨します。 |
example.com |
|
| RuleActions |
array<object> |
必須 |
転送操作。 |
|
|
array<object> |
任意 |
転送操作。 |
||
| Order |
integer |
必須 |
転送の優先度。 説明
このパラメーターは使用されません。設定する必要はありません。 |
20 |
| RuleActionType |
string |
必須 |
転送操作のタイプ。有効な値:
|
ForwardGroup |
| RuleActionValue |
string |
任意 |
転送操作タイプに対応する値。 RuleActionType の値に基づいて、異なる JSON 文字列値を渡します。 1 つの転送ルールには、ForwardGroup、Redirect、または FixResponse タイプの転送操作を最大 1 つ含めることができます。Rewrite、AddHeader、RemoveHeader タイプの転送操作は、ForwardGroup タイプの転送操作の前に配置する必要があります。
|
[{"type":"endpointgroup","value":"epg-bp1l49ltx6iengvf2ks5z****"}] |
| ForwardGroupConfig |
object |
任意 |
転送操作の構成。 説明
このパラメーターは推奨されません。転送操作の設定には RuleActionType と RuleActionValue を使用してください。 |
|
| ServerGroupTuples |
array<object> |
必須 |
エンドポイントグループ構成。 説明
このパラメーターは非推奨です。ルール操作の構成には、RuleActionType および RuleActionValue を使用することを推奨します。 |
|
|
object |
必須 |
エンドポイントグループ構成。 説明
このパラメーターは非推奨です。ルール操作の構成には、RuleActionType および RuleActionValue を使用することを推奨します。 |
||
| EndpointGroupId |
string |
必須 |
エンドポイントグループの ID。 説明
このパラメーターは非推奨です。ルール操作の構成には、RuleActionType および RuleActionValue を使用することを推奨します。 |
epg-bp1nktp3qgbcq9ih6**** |
| ForwardingRuleName |
string |
任意 |
転送ルールのポリシー名。ポリシー名の長さは 2 ~ 128 文字で、英数字、ピリオド (.)、アンダースコア (_)、ハイフン (-) を含めることができます。ポリシー名の先頭は英字または漢字である必要があります。 |
test |
| RuleDirection |
string |
任意 |
ルールが効果を持つ方向。このパラメーターを設定する必要はありません。 デフォルト値は request で、ルールがリクエストに対して効果を持つことを示します。 |
request |
レスポンスフィールド
|
フィールド |
型 |
説明 |
例 |
|
object |
レスポンスパラメーター。 |
||
| RequestId |
string |
リクエスト ID。 |
64ADAB1E-0B7F-4FD8-A404-3BECC0E9CCFF |
| ForwardingRules |
array<object> |
転送ルールに関する情報。 |
|
|
object |
転送ルールに関する情報。 |
||
| ForwardingRuleId |
string |
転送ルールの ID。 |
frule-bp1dii16gu9qdvb34**** |
例
成功レスポンス
JSONJSON
{
"RequestId": "64ADAB1E-0B7F-4FD8-A404-3BECC0E9CCFF",
"ForwardingRules": [
{
"ForwardingRuleId": "frule-bp1dii16gu9qdvb34****"
}
]
}
エラーコード
|
HTTP ステータスコード |
エラーコード |
エラーメッセージ |
説明 |
|---|---|---|---|
| 400 | NotExist.Listener | The listener does not exist. | The listener does not exist. |
| 400 | NotActive.Listener | The state of the listener is not active. | The state of the listener is not active. |
| 400 | NotExist.Accelerator | The accelerated instance does not exist. | The accelerated instance does not exist. |
| 400 | StateError.Accelerator | The state of the accelerated instance is invalid. | |
| 400 | NotExist.BusinessRegion | The business region does not exist. | The business region does not exist. |
| 400 | NotExist.BasicBandwidthPackage | You must specify the basic bandwidth package. | You must specify the basic bandwidth package. |
| 400 | QuotaExceeded.EndPoint | The maximum number of endpoints is exceeded. | The maximum number of endpoints is exceeded. |
| 400 | Exist.EndpointGroup | The endpoint group already exists. | |
| 400 | NoPermission.VpcEndpoint | You are not authorized to perform the operation. | |
| 400 | QuotaExceeded.ForwardingRule | The number of forwarding rule exceeds the limit. | |
| 400 | SystemBusy | System busy, please try again later. | |
| 400 | RepeatPathAndHost.ForwardingRule | The path and host %s are duplicated. | |
| 400 | QuotaExceeded.RuleConditionConfig | The number of paths and hosts exceeds the limit. |
完全なリストについては、「エラーコード」をご参照ください。
変更履歴
完全なリストについては、「変更履歴」をご参照ください。