Varyサポート機能の利用

ウェブアクセラレータのVaryサポート機能の利用方法に関するページです。

注意

利用上の注意事項
Varyサポート機能はオリジンサーバ側のVaryヘッダの指定の仕方によってウェブアクセラレータのキャッシュヒット率が大幅に低下する可能性がありますので前提条件及び設定内容をご理解の上でご利用ください。

注意

オリジン種別 オブジェクトストレージ
Varyサポート機能はオリジン種別がオブジェクトストレージのサイトでは非対応となっております。オリジン種別をウェブサーバにしてご利用ください。

概要(Varyサポート機能とは)

Varyサポート機能は有効にすると、1つのURLに対して複数のキャッシュを保持しクライアントに応じてコンテンツを出し分けて配信ができます。 Varyサポート機能無効時は1つのURLにつき保持するキャッシュは1つのみで、全てのクライアントに同じコンテンツが配信されます。

ウェブアクセラレータでVaryヘッダの設定内容に応じて、1コンテンツ(1つのURL)に対して複数の種類のキャッシュを作成・配信を行います。
1つのURLで表示(コンテンツ)の出し分けをしているウェブサイトを、ウェブアクセラレータ経由でキャッシュ配信する場合に活用していただけます。

  • 圧縮・非圧縮の出し分け(非圧縮あるいはgzipでの圧縮)
  • オリジン間リソース共有 (Cross-Origin Resource Sharing) (CORS)

前提条件・設定例

前提条件

  • ウェブアクセラレータが適切に設定(DNSの設定及びステータス有効化)がされている必要があります。
  • オリジンサーバのレスポンスヘッダにVaryヘッダの設定及び、オリジン側で設定内容に応じたコンテンツの出し分けの設定が必要です。
  • 個別キャッシュ削除は、Varyサポート機能利用時もURL単位(?クエリストリング込み) となります。(特定の種類だけのキャッシュ削除はできません)
  • Varyサポート機能が有効なサイトでは1つのURLに対し最大 5種類 のキャッシュを保持できます。 5種類 以下になる様Varyヘッダを指定してください。

注意

User-Agent の指定について
User-Agent は大量の種類の値が存在するため、1つのURLでウェブアクセラレータがキャッシュ保持可能な上限の5種類を超えてしまい、キャッシュヒット率が大幅に低下しますので指定しないでください。
(ウェブアクセラレータを適用するメリットがなくなる原因となります)

注意

WebPとPNGの出し分けについて
Acceptヘッダ(Vary : Accept)によるWebPとPNGの出し分けは非推奨です。HTMLのpictureタグ等を利用しての対応をご検討ください。
Acceptヘッダの値はブラウザによって様々で5種類を超えてしまう為、ウェブアクセラレータでVaryサポートを有効にしてもキャッシュヒット率が低下してしまう原因となります。

設定手順

ウェブアクセラレータのVaryサポート機能を有効にします。

1. 対象サイトの「設定」ボタンをクリックします。

2. Varyサポート 項目のチェックボックスの有効をクリックします。

3. 「保存」ボタンをクリックします。

4. サイトの設定を変更しますか?の画面が開きますので、問題なければ「保存」ボタンをクリックします。

※ 変更した内容は、「保存」ボタンをクリックした時点で反映されます。

5. 保存が正常に完了すると、以下のような画面が表示されます。

6. 保存が完了したらキャッシュ管理の項目でキャッシュを削除するURLを入力します。

注意

キャッシュの削除について
設定変更前の古いキャッシュが配信されてしまわないように、キャッシュの削除を行います。(無効にする際にも行ってください)
本手順では「URL毎に個別削除」で削除します。
全件削除の必要がある場合は「全件削除」を実行してください。ただし、再度キャッシュされるまで全てのリクエストがオリジンにアクセスされ負荷が上がりますのでご注意ください。

注釈

Varyサポート機能利用時の個別キャッシュ削除について
個別キャッシュ削除は、Varyサポート機能利用時もURL単位(?クエリストリング込み) となります。(特定の種類だけのキャッシュ削除はできません)

7. 個別削除をクリックし、キャッシュを削除します。

8. キャッシュ削除を実行すると、以下のような画面が表示されます。

9. ウェブアクセラレータの設定が完了したら、オリジンサーバのレスポンスヘッダに、Varyヘッダを指定します。

注意

オリジンサーバのレスポンスヘッダに、Varyヘッダの指定及び指定した内容に応じたコンテンツの出し分けの設定が必要です。
Varyヘッダの指定については次項の指定例をご確認下さい。

オリジンサーバ側でのVaryの指定例

gzipもしくは非圧縮

Vary: Accept-Encoding

Accept-Encoding の正規化(ノーマライズ)仕様について
ウェブアクセラレータの仕様として、クライアントのリクエストヘッダ「Accept-Encoding」の値は正規化(ノーマライズ)されます。
ウェブアクセラレータからオリジンには、「gzip (Accept-Encoding:gzip)」か「非圧縮 (Accept-Encodingなし)」の2種類のみが、リクエストヘッダとして送られます。

  • クライアントのリクエストヘッダの値に「gzip または gzip に相当する設定」が 含まれる 場合
    例: Accept-Encoding: br , gzip
    → オリジンに「gzip (Accept-Encoding:gzip)」と送られます。
  • クライアントのリクエストヘッダの値が「gzip または gzip 相当する設定」が 含まれない 場合
    例: Accept-Encoding: compress
    → オリジンに「非圧縮 (Accept-Encodingなし)」」と送られます。

オリジン間リソース共有 (CORS)

Vary: Origin

注意

Vary: Origin の指定について
使い方によっては Vary: Accept-Encoding, Origin のように複数ヘッダを指定する場合もありますが、値の組み合わせが5種類を超えるとキャッシュヒット率が低くなってしまいますのでご注意ください。