次の各節では、静的および動的な URL リダイレクトを設定するリダイレクトルールの設定を説明します。
ワイルドカードパターン を使い、複数リクエストに一致する URL リダイレクトを行います。この方法なら、複雑な式を書かずに送信元と対象の URL パターンを定義できます。
ワイルドカード URL リダイレクトには、次の設定パラメーターがあります。
-
Request URL: アスタリスク(
*)を使った ワイルドカードパターン を入力し、複数リクエストに一致させます。例:https://*.example.com/files/*。 -
Target URL: 対象 URL を入力します。静的(例:
https://example.com)でも、動的(例:https://example.com/${1}/files/${2})でも構いません。動的な対象には${1}、${2}などの ワイルドカード置換 を使います。 -
Status code: リダイレクトレスポンスの HTTP ステータスコードです(デフォルトは 301 - Permanent Redirect)。次のいずれかである必要があります。
- 301 - Permanent Redirect: ページが新しいアドレスへ恒久的に移動しました。
POSTリクエストでは、リダイレクトをたどるときにクライアントまたはブラウザーが HTTP メソッドをGETに切り替えることがあります。 - 302 - Temporary Redirect: ページが新しいアドレスへ一時的に移動しました。
POSTリクエストでは、リダイレクトをたどるときにクライアントまたはブラウザーが HTTP メソッドをGETに切り替えることがあります。 - 307 - Advanced: Temporary, HTTP method preserved: ページが新しいアドレスへ一時的に移動しました。リダイレクトをたどるとき、クライアントまたはブラウザーは元の HTTP メソッド(例:
POST)を維持する必要があります。 - 308 - Advanced: Permanent, HTTP method preserved: ページが新しいアドレスへ恒久的に移動しました。リダイレクトをたどるとき、クライアントまたはブラウザーは元の HTTP メソッド(例:
POST)を維持する必要があります。
- 301 - Permanent Redirect: ページが新しいアドレスへ恒久的に移動しました。
-
Preserve query string: リダイレクト時にクエリ文字列を残すかどうかです(デフォルトは無効)。
API 情報
ワイルドカード URL リダイレクトは、target_url.expression パラメーターで wildcard_replace() 関数を使う、通常の 動的 URL リダイレクト です。
ワイルドカード URL リダイレクトを行うリダイレクトルールの "action_parameters" フィールドの完全な構文は次のとおりです。
"action_parameters": {
"from_value": {
"target_url": {
"expression": "wildcard_replace(http.request.full_uri, r\"<REQUEST_URL_PATTERN>\", r\"<TARGET_URL_PATTERN>\")"
},
"status_code": <STATUS_CODE>,
"preserve_query_string": <BOOLEAN_VALUE>
}
}必須パラメーターは <REQUEST_URL_PATTERN> と <TARGET_URL_PATTERN> です。
省略可能なパラメーターには、次の値を指定できます。
"status_code"(整数):301(恒久的なリダイレクト)302(一時的なリダイレクト)307(一時的なリダイレクト。元の HTTP メソッドを保持)308(恒久的なリダイレクト。元の HTTP メソッドを保持)
"preserve_query_string"(boolean):trueまたはfalse
指定した HTTP ステータスコードで静的 URL リダイレクトを行い、必要に応じてクエリ文字列を残します。
静的 URL リダイレクトには、次の設定パラメーターがあります。
-
URL: リダイレクトレスポンスで返す
LocationHTTP ヘッダーに使うリテラル文字列です。 -
Status code: リダイレクトレスポンスの HTTP ステータスコードです(デフォルトは 301 - Permanent Redirect)。次のいずれかである必要があります。
- 301 - Permanent Redirect: ページが新しいアドレスへ恒久的に移動しました。
POSTリクエストでは、リダイレクトをたどるときにクライアントまたはブラウザーが HTTP メソッドをGETに切り替えることがあります。 - 302 - Temporary Redirect: ページが新しいアドレスへ一時的に移動しました。
POSTリクエストでは、リダイレクトをたどるときにクライアントまたはブラウザーが HTTP メソッドをGETに切り替えることがあります。 - 307 - Advanced: Temporary, HTTP method preserved: ページが新しいアドレスへ一時的に移動しました。リダイレクトをたどるとき、クライアントまたはブラウザーは元の HTTP メソッド(例:
POST)を維持する必要があります。 - 308 - Advanced: Permanent, HTTP method preserved: ページが新しいアドレスへ恒久的に移動しました。リダイレクトをたどるとき、クライアントまたはブラウザーは元の HTTP メソッド(例:
POST)を維持する必要があります。
- 301 - Permanent Redirect: ページが新しいアドレスへ恒久的に移動しました。
-
Preserve query string: リダイレクト時にクエリ文字列を残すかどうかです(デフォルトは無効)。
API 情報
静的 URL リダイレクトを行うリダイレクトルールの "action_parameters" フィールドの完全な構文は次のとおりです。
"action_parameters": {
"from_value": {
"target_url": {
"value": "<STATIC_URL_VALUE>"
},
"status_code": <STATUS_CODE>,
"preserve_query_string": <BOOLEAN_VALUE>
}
}必須パラメーターは <STATIC_URL_VALUE> だけです。
省略可能なパラメーターには、次の値を指定できます。
"status_code"(整数):301(恒久的なリダイレクト)302(一時的なリダイレクト)307(一時的なリダイレクト。元の HTTP メソッドを保持)308(恒久的なリダイレクト。元の HTTP メソッドを保持)
"preserve_query_string"(boolean):trueまたはfalse
動的 URL リダイレクトを行います。対象 URL は式で決まります。リダイレクトの HTTP ステータスコードと、リダイレクト時にクエリ文字列を残すかどうかを設定できます。
動的 URL リダイレクトには、次の設定パラメーターがあります。
-
Expression: リダイレクトの対象 URL を定義する 式 です。この式の評価結果が、リダイレクトレスポンスの
LocationHTTP ヘッダーに使われます。式で使える フィールド と 関数 を参照してください。 -
Status code: リダイレクトレスポンスの HTTP ステータスコードです(デフォルトは 301 - Permanent Redirect)。次のいずれかである必要があります。
- 301 - Permanent Redirect: ページが新しいアドレスへ恒久的に移動しました。
POSTリクエストでは、リダイレクトをたどるときにクライアントまたはブラウザーが HTTP メソッドをGETに切り替えることがあります。 - 302 - Temporary Redirect: ページが新しいアドレスへ一時的に移動しました。
POSTリクエストでは、リダイレクトをたどるときにクライアントまたはブラウザーが HTTP メソッドをGETに切り替えることがあります。 - 307 - Advanced: Temporary, HTTP method preserved: ページが新しいアドレスへ一時的に移動しました。リダイレクトをたどるとき、クライアントまたはブラウザーは元の HTTP メソッド(例:
POST)を維持する必要があります。 - 308 - Advanced: Permanent, HTTP method preserved: ページが新しいアドレスへ恒久的に移動しました。リダイレクトをたどるとき、クライアントまたはブラウザーは元の HTTP メソッド(例:
POST)を維持する必要があります。
- 301 - Permanent Redirect: ページが新しいアドレスへ恒久的に移動しました。
-
Preserve query string: リダイレクト時にクエリ文字列を残すかどうかです(デフォルトは無効)。
API 情報
動的 URL リダイレクトを行うリダイレクトルールの "action_parameters" フィールドの完全な構文は次のとおりです。
"action_parameters": {
"from_value": {
"target_url": {
"expression": "<DYNAMIC_URL_EXPRESSION>"
},
"status_code": <STATUS_CODE>,
"preserve_query_string": <BOOLEAN_VALUE>
}
}必須パラメーターは <DYNAMIC_URL_EXPRESSION> だけです。
省略可能なパラメーターには、次の値を指定できます。
"status_code"(整数):301(恒久的なリダイレクト)302(一時的なリダイレクト)307(一時的なリダイレクト。元の HTTP メソッドを保持)308(恒久的なリダイレクト。元の HTTP メソッドを保持)
"preserve_query_string"(boolean):trueまたはfalse