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

Edge Security Acceleration:カスタムキャッシュキー

最終更新日:Feb 11, 2026

HTTP リクエストの URI、リクエストパラメーター、HTTP リクエストヘッダー、またはカスタム変数など、異なる構成要素に基づいてキャッシュキーを生成するルールを作成することで、カスタムキャッシュキーを設定できます。この機能により、同一ファイルに対する複数のリクエストが単一のキャッシュキーに統合されるため、同一リクエストが異なるファイルとしてキャッシュされることを防ぎます。その結果、キャッシュヒット率が向上し、オリジンフェッチ回数が削減され、応答時間および帯域幅消費量も低減されます。

適用範囲

重要

カスタムキャッシュキー機能は、リクエストのキャッシュ識別子(キャッシュキー)のみを変更し、オリジンフェッチ URL は変更しません。オリジンフェッチリクエストの内容は、クライアントリクエストと同一です。

キャッシュキーは、DCDN のポイント・オブ・プレゼンス(POP)にキャッシュされたファイルを一意に識別する ID です。デフォルトでは、キャッシュキーはクライアントのリクエスト URL(クエリパラメーターを含む)となります。

ユースケース 1

クライアントが複雑なクエリパラメーターを含むリクエストを送信します。複数のリクエストが同一ファイルを対象としていても、パラメーター値が異なる場合、DCDN の POP はそれらを異なるファイルへのリクエストとみなします。その結果、DCDN は同一ファイルの複数のコピーをキャッシュし、オリジンフェッチ回数が増加します。图一

類似したリクエストに対してキャッシュキーを統一するため、カスタムキャッシュキーのルールを適用します。これにより、オリジンフェッチ回数を削減できます。图二

ユースケース 2

クライアントが同一の URL を送信します。DCDN はこれを同一ファイルへのリクエストとみなします。ただし、HTTP ヘッダーにはクライアントシステムを区別するためのフィールドが含まれている場合があります。このような場合、DCDN がこれらのリクエストを個別のファイルとして扱うようにしたいと考えます。场景一

クライアントヘッダーの値をキャッシュキーに追加します。これにより、DCDN は 2 つのリクエストを異なるキャッシュキーを持つものとして処理します。场景二

操作手順

  1. DCDN コンソール にログインします。

  2. 左側ナビゲーションウィンドウで、ドメイン名 をクリックします。

  3. ドメイン名 ページで、管理対象のドメイン名を検索し、設定 をクリックします。

  4. ドメイン名の左側ナビゲーションツリーで、キャッシング をクリックします。

  5. カスタムキャッシュキー タブで、カスタムキャッシュキーを構成します。

    説明

    URI、クエリパラメーター、HTTP ヘッダーを変更できます。また、リクエストから特定のフィールドを抽出するカスタム変数を定義することも可能です。最終的なキャッシュキーは、以下の 4 つの要素から構成されます:URI、パラメーター操作、HTTP ヘッダー、カスタム変数。

    自定义Cachekey

    パラメーター種別

    操作の説明

    ルール条件

    ルール条件は、ユーザーのリクエストに含まれるさまざまなパラメーターを識別し、構成が該当リクエストに適用されるかどうかを判断します。

    • 使用しない:ルール条件を使用しません。

    • ルール条件を追加または編集する場合は、ルールエンジンで管理してください。

    URI

    クライアントのリクエスト URI が設定済みの ソース URI と一致する場合、DCDN はオリジン URI を設定済みの ターゲット URI に置き換え、キャッシュキーを生成します。

    複数の URI 置換ルールを設定できます。DCDN は上から順にルールを適用します。ある ソース URI に一致すると、対応する ターゲット URI を使用し、以降のルールのチェックを停止します。

    • ソース URI: スラッシュ (/) で始まる URI です。http:// プレフィックスやドメイン名を含めてはいけません。PCRE 正規表現をサポートします。

    • ターゲット URI:先頭にスラッシュ (/) が付く URI。`http://` プレフィックスやドメイン名を含めないでください。

    パラメーター操作

    これらの操作は、クライアントの元のリクエスト URL に含まれるクエリパラメーターに適用されます。「追加」「削除」「変更」「予約」のいずれかを選択できます。これらの操作の結果は、キャッシュキーに追加されます。複数の操作を設定でき、DCDN は上から順に適用します。

    • 追加:キャッシュキーに新しいクエリパラメーターを追加します。たとえば、元の URL が http://image.example.com/cat.jpg であり、type=jpg を追加した場合、キャッシュキーは http://image.example.com/cat.jpg?type=jpg になります。

    • 削除:キャッシュキーを生成する際に、元の URL から指定されたクエリパラメーターを削除します。たとえば、元の URL が http://image.example.com/cat.jpg?type=jpg であり、type パラメーターを削除した場合、キャッシュキーは http://image.example.com/cat.jpg になります。

    • 変更: キャッシュキーを生成する際に、元のリクエスト URL の指定されたパラメーターを変更します。 たとえば、元の URL が http://image.example.com/cat.jpg?type=jpg で、パラメーターを type=png に変更した場合、変更後のパラメーターに基づいてキャッシュキーが生成されます。

    • 予約:キャッシュキーを生成する際に、元の URL から指定されたクエリパラメーターのみを保持します。たとえば、元の URL が http://image.example.com/cat.jpg?type=jpg&path=image であり、type パラメーターのみを保持する場合、キャッシュキーは http://image.example.com/cat.jpg?type=jpg になります。

    HTTP ヘッダー

    クライアントの元のリクエストに含まれる指定 HTTP ヘッダーの値を、キャッシュキーに追加します。複数の HTTP ヘッダー名を半角スペースで区切って指定できます。DCDN は、指定順にその値をキャッシュキーに追加します。

    たとえば、元の URL が http://image.example.com/cat.jpg であり、クライアントが HTTP ヘッダー path:image を送信し、HTTP ヘッダー 構成で path を設定した場合、キャッシュキーは http://image.example.com/cat.jpgimage になります。

    カスタム変数

    正規表現を用いて、クライアントの元のリクエストに含まれるリクエストパラメーター、HTTP ヘッダー、Cookie、または URI から値を抽出します。正規表現がマッチした場合、マッチした値をキャッシュキーに追加します。詳細については、「構成例」をご参照ください。

  6. OK をクリックして構成を完了します。

構成例

URI

http://aliyundoc.com/a/b/image.jpg および http://aliyundoc.com/a/b/c/image.jpg へのリクエストは、同一ファイルを対象としています。キャッシュキーは http://aliyundoc.com/c/image.jpg です。URI

パラメーター操作

クライアントのリクエスト http://aliyundoc.com/a/b/image.jpg?delete_par=1&modify_par=1 では、add_par=1 を追加し、delete_par を削除し、modify_par2 に変更します。最終的なキャッシュキーは http://aliyundoc.com/a/b/image.jpg?modify_par=2&add_par=1 です。

重要

パラメーター操作では、同一変数に複数の操作を適用した場合、適用順序は「追加 > 削除 > 保持 > 変更」です。

参数操作

HTTP ヘッダー

クライアントリクエストに含まれる User-Agent および Accept-Language HTTP ヘッダーの値が、キャッシュキーに追加されます。たとえば、http://aliyundoc.com/a/b/image.jpg へのリクエストに User-Agent=Mozilla/5.0 (Linux; X11) および Accept-Language=en というヘッダーが含まれている場合、そのリクエストのキャッシュキーは http://aliyundoc.com/a/b/image.jpgMozilla/5.0(Linux;X11)en になります。HTTP Header

カスタム変数

例 1

変数名は language です。ソースは リクエストヘッダー で、ソースフィールド名は Accept-Language です。マッチングパターンは ([%w]+),([%w]+) で、変数式は $1aa です。自定义变量

クライアントリクエスト http://aliyundoc.com/a/b/image.jpg に HTTP ヘッダー Accept-Language=en,ch が含まれている場合、パターンは en にマッチし、$1 に割り当てられます。変数式により aa が追加され、変数値は enaa となります。この変数は language というエイリアスで呼び出され、URL 末尾に追加されて最終的なキャッシュキー http://aliyundoc.com/a/b/image.jpgenaa が生成されます。

説明

変数式では、$n は、マッチングルール内の n 番目の括弧のペアによってマッチした内容を参照します。たとえば、例 1 の Accept-Language=en,ch では、マッチングルールは ([%w]+),([%w]+) です。したがって、$1=en および $2=ch となります。

例 2

変数名は expired です。ソースは リクエスト Cookie で、ソースフィールド名は a です。マッチングルールは [%w]+:(.*) で、変数式は $1 です。Custom variable

クライアントリクエスト http://aliyundoc.com/a/b/image.jpg に Cookie Cookie a=expired_time:12635187 が含まれている場合、パターンは 12635187 にマッチし、$1 に割り当てられます。この変数は expired というエイリアスで呼び出され、URL 末尾に追加されて最終的なキャッシュキー http://aliyundoc.com/a/b/image.jpg12635187 が生成されます。

例 3

URI ルールとカスタム変数の両方を構成します。

  • URI:

    パターン /abc/.*/abc に一致するすべての URI を /abc に置き換えます。示例三

  • カスタム変数:

    変数名は testname です。ソースは Path で、マッチングパターンは /abc/xyz/(.*)、変数式は $1 です。示例三

    クライアントリクエスト URL http://aliyundoc.com/abc/xyz/abc/image.jpg では、URI ルールによりキャッシュキーが http://aliyundoc.com/abc/image.jpg に変更されます。その後、カスタム変数ルールが /abc/xyz/(.*) にマッチし、$1abc となります。DCDN はこれを変更後のキャッシュキーに追加し、最終的なキャッシュキー http://aliyundoc.com/abc/image.jpgabc を生成します。このように複数のルールを組み合わせることで、より高度なキャッシュロジックを実現できます。

    カスタム変数がマッチしなかった場合、DCDN は変数式 $1 をキャッシュキーに追加しません。