HTTP and HTTPS Shared Cache

最終更新日:2024-07-01 11:13:03

通常、ユーザーがHTTPまたはHTTPSプロトコルを使用して同じコンテンツを要求する場合、リクエストURLはプロトコルによってのみ異なります。たとえば、http://domain/index.htmlhttps://domain/index.html です。CDNサーバーはデフォルトで同じファイルの複数のコピーをキャッシュし、異なるプロトコルのリクエストは異なるキャッシュエントリにヒットしますが、多くの場合ファイルの内容は同一であると期待されます。

CDNetworks CDNプラットフォームでは、HTTP/HTTPSプロトコルによってのみ異なるリクエストを同じファイルとしてキャッシュするかどうかをカスタマイズできます。さらに、CDNサーバー上でキャッシュをパージする際にプロトコルの違いを無視するかどうかを設定して、プロトコルのみに違いがある同じURLのファイルリソースをリフレッシュできます。

CDNサーバー上のユーザーリクエストのキャッシュヒット率を向上させるために、HTTPS/HTTP Shared Cache を設定することを強くお勧めします。

HTTPS/HTTP Shared Cacheの設定方法

  1. CDNetworksコンソール にログインし、適切な製品を選択します。
  2. Configuration に移動し、設定したいドメインを見つけ、上部の Edit Configuration またはドメイン右側の Edit ボタンをクリックします [Feature Upgrade] Advanced Access Control
  3. 設定変更ページに入り、Cache Optimization の下の HTTPS/HTTP Shared Cache を見つけ、Add ボタンをクリックします。
  4. ルール編集ページで、必要に応じて以下の設定オプションを簡単に追加できます。
パラメータ 説明
Ignore Protocol When Caching この設定のデフォルト値は No であり、同じファイルURLはユーザーリクエストのHTTP/HTTPSプロトコルを無視せず、CDNノード上に同じファイルの複数のキャッシュエントリが生成されます。
Yes を選択すると、CDNサーバーはリクエストプロトコルを無視します。CDNサーバー上にファイル(例:ファイルA)がキャッシュされている場合、HTTPまたはHTTPSプロトコルを使用してファイルAをリクエストすると、CDNサーバー上の同じキャッシュエントリにヒットします。
Ignore Protocol When Refreshing Cache デフォルト値は No であり、https:// ファイルパスを指定してリフレッシュタスクを送信すると、CDNサーバー上の https:// キャッシュエントリのみがリフレッシュされます。http:// キャッシュエントリがある場合、http:// を使用したリクエストは既存のキャッシュにヒットします。
Yes を選択すると、リフレッシュタスク内のURLのプロトコルが無視され、CDNサーバー上の http://https:// キャッシュエントリの両方がリフレッシュされます。その後のユーザーリクエストは、HTTPまたはHTTPSに関係なくキャッシュ MISS が発生します。
現在、この設定は URL Refresh モードにのみ適用されます。

設定を完了したら、OK をクリックし、その後 Next を選択して設定を送信してください。本番環境への影響を最小限に抑えるため、ステージング環境での Pre-deploy テストを強く推奨します。この重要なステップにより、設定がライブ環境に適用される前に正確性を確認できます。設定の正確性を確認したら、Deploy Now をクリックしてライブ環境に実装します。設定は通常3〜5分以内に有効になります。事前デプロイテストおよび設定の有効性を確認するための詳細なガイダンスについては、設定をステージング環境にデプロイして検証する チュートリアルをご参照ください。

注意事項

Ignore Protocol When Caching 設定を Yes に設定すると、Ignore Protocol When Refreshing Cache 設定はデフォルトで Yes にのみ設定でき、No に設定することはできません。理由は、キャッシュコンテンツをCDNサーバーにキャッシュする際にプロトコルを無視するように設定しているため、HTTPまたはHTTPSプロトコルのいずれかを使用したユーザーリクエストがキャッシュにヒットしますが、CDNサーバーはHTTPプロトコルでコンテンツをキャッシュする可能性があります。しかし、リフレッシュタスクを送信する際にHTTPSプロトコルを使用し、キャッシュリフレッシュ時にプロトコルを無視しない場合、HTTPプロトコルのキャッシュエントリはリフレッシュされず、ユーザーリクエストは古いキャッシュファイルにヒットし続けます(キャッシュ有効期限内の場合)。