Bulk Redirects には、次の要素があります。
-
URL リダイレクト: ソース URL、ターゲット URL、ステータスコード、リダイレクトパラメーターを持つエントリです。URL リダイレクトは Bulk Redirect リスト内の個々の項目です。
-
Bulk Redirect リスト: 1 件以上の URL リダイレクトを含む、名前付きのコレクションです。Bulk Redirect リスト内のすべての URL リダイレクトを有効にするには、Bulk Redirect ルールからそのリストを参照します。異なる Bulk Redirect ルールが、同じ Bulk Redirect リストを参照できます。
-
Bulk Redirect ルール: Ruleset Engine で動くルールです。Ruleset Engine は、Cloudflare がルールを評価し実行する仕組みです。Bulk Redirect ルールには、関連する Bulk Redirect リストがあります。
Bulk Redirect ルールが Bulk Redirect リストを有効にし、リストには 1 件以上の URL リダイレクトが含まれます。
次の例は、2 件の URL リダイレクトを持つ list_b という Bulk Redirect リストを定義します。
list_b Bulk Redirect リスト
| ソース URL | ターゲット URL | ステータスコード |
|---|---|---|
example.com/about |
https://example.com/news |
301(デフォルト) |
example.com/new_feature |
https://example.com/soon |
302 |
次の Bulk Redirect ルール(名前は Rule 2)は、list_b Bulk Redirect リスト内の URL リダイレクトを有効にします。
Rule 2 Bulk Redirect ルール
- ルール名:
Rule 2 - 関連リスト:
list_b
URL リダイレクトでは、ソース URL、ターゲット URL、ステータスコード、リダイレクトパラメーターを設定できます。
ソース URL を指定するときは、サポートされていないワイルドカードではなく、利用できるリダイレクトパラメーターを使います。たとえば Include subdomains パラメーターを使うと、サブドメイン(例: https://b.example.com と https://a.b.example.com)と apex ドメイン(サブドメインのないルートドメイン。例: https://example.com)の両方に適用される、1 件の URL リダイレクトを設定できます。ほかのパラメーターでは、ソース URL のパスとクエリ文字列の扱いを指定できます。詳細は Bulk Redirects の動作 を参照してください。
URL リダイレクトは、Bulk Redirect リストのリスト項目です。
Bulk Redirect リストを使うと、目的ごとに URL リダイレクトのグループを分けて作成できます。1 件以上の Bulk Redirect ルールで、同じ Bulk Redirect リストを使えます。
Bulk Redirect リスト単体ではリダイレクトは行われません。リスト内のリダイレクトを有効にするには、Bulk Redirect ルールからそのリストを参照する必要があります。
Bulk Redirect リストに、ソース URL が完全に同じ URL リダイレクトを複数含めることはできません。
Bulk Redirect リストへ項目をインポートする CSV 形式の詳細は Bulk Redirects の CSV ファイル形式 を参照してください。
Bulk Redirect ルールは、Ruleset Engine で動くルールです。Bulk Redirect リストを通じて 1 件以上の URL リダイレクトを有効にします。
Bulk Redirect ルールを設定するとき、Bulk Redirect リストを関連付けます。そのリスト内のすべての URL リダイレクトが有効になります。リストごとにルールを作成することも、複数の Bulk Redirect ルールから同じ Bulk Redirect リストを参照することもできます。
Bulk Redirect ルールは、Ruleset Engine で動くほかのルールと同様に、アクション(ルールが発動したときの処理)と 式(満たすべき条件)を持ちます。この 2 つのプロパティに加えて、名前、任意の説明、関連する Bulk Redirect リスト、キー もあります。
ルール式(フィルター式)は、ルールが実行されるために満たすべき条件を指定します。デフォルトでは、指定したリストのすべての URL リダイレクトが適用されます。
Bulk Redirect ルールのデフォルト式は次のとおりです。
http.request.full_uri in $<LIST_NAME>この式は、リクエスト URL が基本的な 正規化(URL 正規化 が有効な場合)のあと、リスト <LIST_NAME> 内の URL リダイレクトのソース URL と一致したときに、リダイレクトが適用されることを意味します。
デフォルトと異なる式を使い、URL リダイレクトの一致をより限定できます。たとえば、Bulk Redirect ルールの式を次にすると、英国からのリクエストだけが一致します。
ip.src.country == "GB" and http.request.full_uri in $<LIST_NAME>利用できるフィールドの詳細は 利用できるフィールドと関数 を参照してください。
ルールキーは、関連する Bulk Redirect リスト内で一致する URL リダイレクトを探すときに、Cloudflare が使うリクエストフィールドを指定します。
ルール式が一致すると、Cloudflare はルールキーの値を、関連する Bulk Redirect リスト内の各 URL リダイレクトのソース URL と比較し、一致を探します。
キーは http.request.full_uri または raw.http.request.full_uri のいずれかにしてください。Web サーバーが受け取った URI を正規化前のまま Bulk Redirect リストのソース URL と比較するには、raw.http.request.full_uri を使います。
キーで使う URI フィールドは、式で使う URI フィールドと同じである必要があります。そうしないと、ルール式には一致しても、リスト内のどのソース URL にも一致しないことがあります。たとえばキーを http.request.full_uri にする場合、ルール式で使うフィールドも http.request.full_uri にする必要があります。逆にキーを raw.http.request.full_uri にする場合、式で使うフィールドも raw.http.request.full_uri にする必要があります。