機能概要
同一パスのリクエストURLを、リクエストパラメータ、Cookie、またはHTTPリクエストヘッダーの違いによって異なるファイルに振り向ける必要がある場合、または異なるパラメータを持つリクエストURLをすべて同一のファイルに振り向ける場合、カスタムCache Keyはノード内のリソースのキャッシュCache Key識別子をカスタム調整できます。これには、クエリ文字列の連結、HTTPヘッダーまたはCookie情報の連結などが含まれ、リクエストURLがさまざまなシナリオに応じて対応するキャッシュリソースを正しく取得できるようにします。您はキャッシュキー(Cache Key)の紹介を通じて、Cache Keyとは何かを理解できます。 注意:
カスタムCache Keyのクエリ文字列パラメータ名、およびHTTPリクエストヘッダーのヘッダー名は、大文字小文字の英字、数字、アンダースコア(_)、およびハイフン(-)のみをサポートします。
使用シナリオ
シナリオ1:ユーザーがアクセスするファイルパスは完全に同一ですが、携帯するクエリ文字列、HTTPリクエストヘッダー、Cookieの内容によってバージョンの区別が生じます。カスタムCache Keyを使用してこのタイプのファイルのキャッシュキーを調整し、ファイルキャッシュを区別できます。
シナリオ2:ユーザーがアクセスするURL内のクエリ文字列の内容はファイルの内容にまったく影響しません。上記のリクエストに対応するファイルは同一であり、ファイルバージョンに影響しません。カスタムCache Keyを使用してこのタイプのファイルのキャッシュキーを調整し、リクエストが同一のファイルキャッシュにヒットするようにできます。
操作手順
シナリオ1:サイト上の全ドメインに対するカスタムCache Keyの設定
アクセスポイント全体にカスタムCache Keyを設定する必要がある場合、またはサイトレベルのフォールバック設定として使用する場合は、以下の手順を参照してください:
1. EdgeOneコンソールにログインし、左側のメニューバーで「サービス概要」に入り、「Webサイト安全な加速」内で設定が必要なサイトをクリックします。
2. サイト詳細ページで「サイト加速」をクリックし、サイト全体設定ページに入り、右側のナビゲーションバーで「キャッシュ設定」をクリックします。
説明:
グローバル設定では「クエリ文字列」と「大文字小文字を無視」のみを設定できます。より豊富なカスタムCache Key設定項目が必要な場合は、シナリオ2のルールエンジンでの設定手順を参照してください。 キャッシュ設定ページでクエリ文字列カードを見つけ、グローバルサイト設定をクリックして設定します。
默认設定はすべて保持です。つまり、元のリクエストURLの全クエリパラメータをCache Keyとして保持します。その他のオプションをサポートします:a. すべて無視:クエリ文字列全体を無視します。b. 指定パラメータを保持:クエリ文字列内の指定されたパラメータのみを保持します。c. 指定パラメータを無視:クエリ文字列内の指定されたパラメータのみを無視します。
キャッシュ設定ページで「大文字小文字を無視」カードを見つけます。デフォルト設定では大文字小文字を無視する機能はオフです。URLの内容が同じでも、英字の大文字と小文字が異なる場合は異なるCache Keyと見なされます。グローバル有効化スイッチをクリックして大文字小文字を無視する機能をオンにすると、英字の大文字と小文字が異なる場合は同じCache Keyと見なされます。
シナリオ2:指定ドメイン、パス、またはファイル拡張子などのリクエスト粒度に対するカスタムCache Keyの設定
サイトexample.com配下のwww.example.comドメインに対して、すべてのクエリ文字列を無視し、HTTPリクエストヘッダーMy-Client-HeaderおよびCookie内のパラメータname1、name2をCache KeyとするカスタムCache Keyルールを設定する必要がある場合は、以下の手順を参照して設定できます:
操作手順
1. EdgeOneコンソールにログインし、左側のメニューバーで「サービス概要」に入り、「Webサイト安全な加速」内で設定が必要なサイトをクリックします。
2. サイト詳細ページで「サイト加速」をクリックし、サイト全体設定ページに入り、「ルールエンジン」タブをクリックします。
3. ルールエンジンページで「ルールを作成」をクリックし、「新しい空白のルールを追加」を選択します。
4. ルール編集ページで、マッチングタイプとしてHostを選択し、www.example.comに設定します。
5. 操作 > 選択ボックスをクリックし、表示された操作リスト内で、操作としてカスタムCache Keyを選択します。
6. タイプの下にある追加をクリックすると、カスタムCache Keyのタイプを追加できます。本サンプルシナリオを例にすると、クエリ文字列、HTTPリクエストヘッダー、Cookieを追加して設定し、対応する内容を入力します。完全なルール設定は以下のとおりです:
7. 「保存して公開」をクリックすると、このルールの設定が完了します。
有効化の例
設定完了後、Cache KeyはURL+My-Client-Header+Cookieで構成されます:すべてのクエリ文字列を無視し、My-Client-Headerと指定パラメータを保持した後のCookieを連結します。
クライアントがAをリクエストする場合:
URL:https://www.example.com/path/demo.jpg?key1=value1&key2=value2。
HTTPリクエストヘッダー:My-Client-Header:fruitを含みます。
Cookie:name1=yummy;name2=tasty;name3=strawberry。
クライアントリクエストBの場合:
URL:http://www.example.com/path/demo.JPG?key1=value1&key2=value2&key3=value3。
HTTPリクエストヘッダー:My-Client-Header:fruitを含みます。
Cookie:name1=yummy;name2=tasty;name3=blueberry。
クライアントリクエストCの場合:
URL:http://www.example.com/path/demo.JPG?key1=value1&key2=value2&key3=value3&key4=value4。
HTTPリクエストヘッダー:My-Client-Header:seaを含みます。
Cookie:name1=yummy;name2=tasty;name3=fish。
AとBのリクエストは同じキャッシュリソースにヒットし、Cは別のキャッシュリソースにヒットします。
関連参考
サポートされるヘッダー名の説明:
|
カスタム | カスタムヘッダー。 名前:1~100文字で、数字0~9、英字a~z、A~Z、および特殊記号-で構成されます。 値:1~1000文字で、中国語はサポートされません。 |
プリセットヘッダー | クライアントのUser-Agent情報に基づいて集約されたヘッダー: クライアントデバイスタイプ:EO-Client-Device 値:Mobile、Desktop、SmartTV、TabletまたはOthers クライアントOS:EO-Client-OS 値:Android、iOS、Windows、MacOS、LinuxまたはOthers クライアントブラウザタイプ:EO-Client-Browser 値:Chrome、Safari、Firefox、IEまたはOthers |