キャッシュキーは、Dynamic Route for CDN (DCDN) ノードにキャッシュされているファイルの一意のIDです。 デフォルトでは、キャッシュキーはパラメーターを含むリクエストのURLです。 DCDNを使用すると、同じリソースファイル宛てのリクエストのキャッシュキーを同じキャッシュキーに書き換えることができます。 これにより、キャッシュスペースを節約し、オリジンサーバーにリダイレクトされるリクエストの数を減らすことができます。 このトピックでは、カスタムキャッシュキーを設定する方法について説明します。
シナリオ
シナリオ 1:


シナリオ 2:


手順
- にログインします。 DCDNコンソール
- On theドメイン名ページで、管理するドメイン名を見つけて、設定[アクション] 列に表示されます。
- 指定したドメイン名の詳細ページの左側のナビゲーションウィンドウで、キャッシュ設定 をクリックします。
- [カスタムキャッシュキー] タブで、キャッシュキーを設定します。 説明
- 変更できるのは、キャッシュキー内のURI、パラメーターアクション、およびHTTPヘッダーのみです。 カスタム変数がサポートされています。 変数を追加して、リクエストからフィールドを取得できます。 キャッシュキーは、URI、パラメーターアクション、HTTPヘッダー、およびカスタム変数で構成されます。
- カスタムキャッシュキーは、オリジンサーバーにリダイレクトされるリクエストのURLを変更しません。 カスタムキャッシュキーは、これらのリクエストのキャッシュ識別子のみを変更します。 オリジンサーバーにリダイレクトされ、クライアントから送信されたリクエストには同じコンテンツが含まれます。

- [OK] をクリックします。
例:
URI
http://example.com/a/b/test.jpg および http://example.com/a/b/c/test.jpg 宛てのリクエストは、同じリソースファイルを取得するために送信されたリクエストと見なされます。 リソースファイルのキャッシュキーを http://example.com/c/test.jpg します。 
パラメーター操作
http://example.com/a/b/test.jpg?delete_par=1&modify_par=1 向けです。 パラメーターadd_par=1がURLに追加され、パラメーターdelete_parがURLから削除され、パラメーターmodify_parの値が2に変更されます。 最終的なURLは http://example.com/a/b/test.jpg?modify_par=2&add_par=1 です。 
HTTP ヘッダー
User-AgentフィールドとAccept-Languageフィールドの値がキャッシュキーに含まれています。 たとえば、http://example.com/a/b/test.jpg 向けのリクエストがUser-Agent=Mozilla/5.0 (Linux; X11) とAccept-Language=enをヘッダーに含む場合、リクエストのキャッシュキーは http://example.com/a/b/test.jpgMozilla/5.0(Linux; X11)enになります。 
カスタム変数
例 1:
languageです。 変数のソースはRequest Header、ソースフィールドはAccept-Language、マッチルールは ([% w]+) 、([% w]+) 、変数式は $1aaです。 
http://example.com/a/b/test.jpg 宛てのリクエストにHTTPヘッダーAccept-Language=en,chが含まれている場合、一致ルールは変数式の値enを $1に割り当てます。 文字列aaは、変数式の末尾にも追加されます。 その結果、エイリアスlanguageを持つ変数enaaが生成されます。 DCDNが変数をURLに追加した後、最終的なキャッシュキーは次の http://example.com/a/b/test.jpgenaa になります。 $nの定義は、No. n個のブラケット。 例1では、Accept-Language=en,chであり、一致ルールは ([% w]+),([% w]+) です。 したがって、$1=enおよび $2=chである。 例 2:
期限切れです。 変数のソースはRequest Cookie、ソースフィールドはa、一致ルールは [% w]+ :(.*) 、変数式は $1です。 
http://example.com/a/b/test.jpg 宛てのリクエストにCookie a=expired_time:12635187のcookieが含まれている場合、一致ルールは変数式の値12635187を $1に割り当てます。 変数のエイリアスが期限切れです。 最終的なキャッシュキーが http://example.com/a/b/test.jpg12635187 される。
例 3:
URIルールとカスタム変数を同時に設定する
URI:
/abc/.*/abcを /abcに変換します。 
カスタム変数:
testnameです。 変数のソースはPath、一致ルールは /abc/xyz/(.*) 、変数式は $1です。 
リクエストが http://example.com/abc/xyz/abc/test.jpg 向けの場合、URLはURIルールに基づいて http://example.com/abc/test.jpg に変更されます。 URLは /abc/xyz/(.*) と一致します。 この場合、$1に値abcが割り当てられ、キャッシュキーに追加されます。 生成されたキャッシュキーを http://example.com/abc/test.jpgabc する。 したがって、より複雑なキャッシュロジックをサポートするために、2つのルールが同時に適用されます。