最終更新日:2025-05-20 10:45:41
CDNetworksのCDNプラットフォームは、Webサイトのコンテンツに対し、エッジサーバー上でキャッシュルールをカスタマイズすることを可能にします。ファイルタイプやリクエストURL、その他のパラメータごとに、キャッシュ時間やその他のcache policyを設定することで、CDNプラットフォーム上でご希望のキャッシュ動作を実現できます。さらに、CDNetworks CDNプラットフォームを利用してWebサイトが加速・配信される場合、プラットフォームは一部のデフォルトキャッシュルールを適用します。独自のルールが定義されていない場合、オリジンからのコンテンツは、これらのデフォルトキャッシュルールをCDNサーバー上で適用されます。
CDNetworks CDNプラットフォームでは、オリジンサーバーのレスポンス構成やユーザーリクエストの内容に基づいて、さまざまなcache policyおよびデフォルトのCache TTLが適用されます。
Cache-Control:no-store,no-cache,must-revalidate,post-check=0,pre-check=0
やPragma:no-cache
などのno-cacheパラメータが含まれている場合、またはリクエストにAuthorization
ヘッダーが含まれており、レスポンスでCache-Control:public
が指定されていない場合、CDNサーバーはデフォルトでこのコンテンツをキャッシュしません。Authorization
ヘッダーがありレスポンスでCache-Control:public
が指定されている場合、キャッシュはプラットフォームのデフォルトcache policyおよびCache TTL、もしくはお客様のカスタムキャッシュルール(特定のファイルタイプがCDNサーバーでキャッシュされないよう設定されている場合がありますのでご注意ください)に従います。CDNetworksは、リクエストのファイルタイプやリクエストタイプごとに、デフォルトのcache policyおよびCache TTLを定義しています。詳細は【Default Caching Strategy】をご参照ください。
CDNetworksコンソールにログインし、該当する製品を選択してください。
設定画面に移動し、設定したいDomainを見つけて、上部の設定を編集、もしくはDomainの右側にある編集ボタンをクリックします 。
構成変更ページで、キャッシュ最適化内のCustomized Cachingを見つけ、追加ボタンをクリックします。
ルール編集ページでは、ご要望に応じて以下の構成オプションを簡単に追加できます。
適用範囲
CDNetworks CDNプラットフォームでは、カスタムキャッシュルールの有効範囲として以下のオプションを提供しています。
オプション | 説明 |
---|---|
全リクエスト | 関連付けられたDomainへのすべてのリクエストが本ルールに適用されます。 |
ホームページのみ | このルールはルートディレクトリへのリクエストにのみ適用されます。例:http://domain/ やhttps://domain/ 。 |
指定ファイルタイプ | このルールは指定したファイルタイプへのリクエストに適用されます。リストから選択するか、任意のファイルタイプを入力フィールドでカスタマイズできます。複数のファイルタイプは; で区切ります。例:ace;aac 。 |
指定URI | このキャッシュルールには特定のURIを設定でき、完全一致またはパラメータ無視一致をサポートします。複数のURIは改行で区切って入力できます。 完全一致:ユーザーのリクエストURIが設定したURIと完全に一致した場合にのみ本ルールが適用されます。 パラメータ無視一致:クエリ文字列付きのURIがリクエストされた場合、クエリパラメータは無視されます。クエスチョンマークの前までを設定URIと照合して一致したリクエストにこのキャッシュルールが適用されます。 入力するURIは http:// やhttps:// を含まず、URI部分だけを指定してください。たとえば、完全なURLがhttps://domain/browse/index.html の場合、/browse/index.html のみを設定します。 |
指定ディレクトリ | このルールは、指定されたディレクトリへのすべてのリクエストに適用されます。ディレクトリは/ から始まり/ で終わる必要があり、英字、数字、特定の記号(アンダースコア、ハイフン、パーセント記号、ドット)で構成できます。例:/file/1%1/ は、http://domain/file/1%1/ ディレクトリおよびその配下すべてのファイルへのリクエストに適用されます。複数のディレクトリ指定時は改行で区切ってください。 |
URLパターン | 正規表現を直接入力することも可能で、/ で始まる必要はありません。プラットフォームは自動的にURLの先頭に ^https?://[^/]/ を付与します。例:.*.jpg$ は、このルールに関連するすべてのDomainへのJPGファイルリクエストがこのポリシーに一致することを示します。 |
上記のリストからカスタムキャッシュルールの有効範囲を選択するだけでなく、詳細範囲設定にてさらに設定を行うことができます。こちらは、設定した有効範囲と連携し、キャッシュルールの実際の有効範囲をAND関係で決定します。詳細範囲設定では、以下のオプションがあります:
パラメーター | 説明 |
---|---|
UAまたは例外UA | 正規表現がサポートされており、スペースおよびTABは\s に変換されます(例:^Mozilla/4.0$ )。このUAヘッダーを持つリクエストに対してルールを適用・非適用できます。複数のUAを同時に設定可能で、各UAは1行ずつ記載してください。 |
例外URL(正規表現) | この設定項目では、一部の特定リクエストURLをキャッシュルールの適用対象から除外できます。正規表現の記述ルールは、上記のURLパターン設定項目と同じです。 |
Cache TTL
指定したEffect Rangeにマッチするリクエストに対し、CDNetworks CDNプラットフォームではCDNサーバーのCache TTLをカスタマイズできます。現在、設定可能なキャッシュ時間に関連するcache policyは3種類あり、詳細は以下の通りです。
Parameter | Description |
---|---|
Cache | このオプションは固定のCache TTL(キャッシュ時間)を示します。貴社ウェブサイトのファイルが安定した頻度で更新されている場合、固定のCache TTLを設定することで、CDNヒット率の最適化やバック・トゥ・オリジン(回源)トラフィックの削減が可能です。 |
Honor origin cache rule | ウェブサイトファイルでExpires やCache-Control などのCache TTLに関するパラメータが設定されている場合、CDNサーバーはオリジンで設定したCache TTLに従います。ただし、何らかの理由でオリジンサーバーがCache TTLのパラメータを含まない場合でも、ここで設定したCache TTLに従ってオリジンからのコンテンツがキャッシュされるよう、こちらでもCache TTLを必ず設定してください。 |
Do Not Cache | Webサイトのファイルでリアルタイム更新が必要な場合は、Do Not Cacheを設定してください。CDNエッジサーバーへのユーザーリクエストごとに、毎回オリジンからファイルを取得してユーザーに応答し、CDNエッジサーバーではキャッシュされません。 |
キャッシュ期間でサポートされている時間単位は 秒、分、時間、日 で、デフォルトは時間となります。
Cache(固定されたキャッシュ期間)またはHonor origin cache rule を選択した場合、さらに詳細設定を選択することで、オリジンレスポンスヘッダーやクライアントのリロードリクエストに基づくキャッシュ動作をカスタマイズできます。プラットフォームには一部デフォルト設定がある場合があります。
パラメータ | 説明 |
---|---|
オリジンからのIgnore No-Cache header | このオプションのデフォルト値はNoです。詳細は本書冒頭の説明をご参照ください。 Yesを選択すると、オリジンレスポンスヘッダー内の Cache-Control: no-cache などno-cache関連ヘッダーが無視され、現在定義されているcache policyが直接適用されます。 |
Authorizationヘッダーの無視 | このオプションのデフォルト値はNoです。詳細は本書冒頭の説明をご参照ください。 Yesを選択すると、オリジンレスポンスヘッダーに Cache-Control: public がなくても、Authorizationヘッダーを含むリクエストを現在定義されているcache policyに従って処理できます。 |
クライアントリフレッシュ無視 | クライアントからの「リロード」リクエストに対する処理ルールを設定します。クライアントリロードリクエストを無視するようカスタマイズすると、キャッシュ期間内でCDNサーバー上のキャッシュファイルがそのままクライアントに返されます。あるいは「if-modified-since」へ変換することも選択でき、その場合、CDNエッジサーバー上のファイルの最終更新時刻がクライアントの「Last-Modified」時刻より新しければ、エッジサーバー上のキャッシュファイルがクライアントに返されます。それ以外の場合、「304 Not Modified」ステータスが返されます。 |
【大文字・小文字の区別を無視】
「はい」を選択すると、上記で指定した「適用範囲」は大文字・小文字の区別を無視します。つまり、URLの大文字・小文字のみが異なる2つのリクエストは、どちらも指定したルールに一致します。例えば「http://Domain/a.jpg」を1時間キャッシュするよう設定した場合、「http://domain/a.jpg」および「http://domain/A.jpg」の両方がCDNエッジサーバーで1時間キャッシュされます。
逆に、「いいえ」を選択した場合、「適用範囲」で設定された大文字・小文字の違いは無視されず、リクエストにおいて完全一致した場合のみCDNエッジサーバーでキャッシュされます。
この設定のデフォルト値は「はい」です。
【優先順位】
「優先順位」フィールドでは、このルールの優先度を指定できます。ユーザーからのリクエストに基づき、システムは設定されたルールを照合します。複数のルールに該当する場合は、優先度が高いルールが先に適用されます。
詳細な設定ページに進む場合はAddボタンをクリックしますが、Addの横にあるQuick Configurationボタンを使用すると、簡易なcache policy設定を行うこともできます。この場合、適用範囲はすべてのリクエストにデフォルト設定され、cache durationではCacheまたはHonor origin cache ruleから選択できますが、Advanced configurationのオプションは利用できません。またDo Not Cacheも直接選択でき、この簡易ルールの適用優先度も素早く設定できます。
設定の完了後は、必ずOKをクリックし、続いてNextを選択して設定内容を送信してください。プロダクション環境への影響を最小限に抑えるため、事前にステージング環境でPre-deployテストを実施することを強く推奨します。この重要なステップにより、本番適用前に設定の正確性が確認できます。設定内容に問題がないことを確認したら、Deploy Nowをクリックして本番環境に反映させてください。設定は通常3~5分以内に有効化されます。事前検証テストや設定の有効性確認についての詳細は、Deploy the Configurations to Staging Environment for Validationのチュートリアルをご参照ください。
【例1】特定のUser-Agentからリクエストされた特定のファイルタイプに対して、固定のCache TTLを適用する場合
このルールが適用される関連Domainにおいて、ファイルタイプが「png;jpeg」でUser-Agentが「Mozilla/4.0」の場合、CDNのEdge Cachingサーバーではこれらのファイルが6時間の固定Cache TTLでキャッシュされます。また、このルールでは、オリジンレスポンスヘッダー中のno-cacheパラメーター、リクエスト中の認証ヘッダー、クライアントのリロードリクエストもすべて無視するよう強制設定されます。
このチュートリアルで設定されたキャッシュルールはCDNサーバー上で有効です。CDNサービスの種類(例:Content Acceleration や Media Acceleration Live Broadcast)によって、同じファイルタイプに異なるデフォルトのキャッシュルールが適用される場合があります。ここで記載されているデフォルトルールはあくまで参考情報です。デフォルトルールがウェブサイトにとって重要な場合は、必ず技術サポートまでお問い合わせください。