Time-to-live (TTL) は、リソースがAlibaba Cloud CDN ポイントオブプレゼンス (POP) にキャッシュされている時間です。 キャッシュされたリソースのTTLが終了すると、POP上のリソースは期限切れになります。期限切れのリソースにアクセスしようとする リクエストは、オリジンサーバーにリダイレクトされます。 検索されたリソースはクライアントに返され、POPにキャッシュされます。 ファイルディレクトリまたはファイル名拡張子に基づいて、静的リソースのキャッシュルールを作成できます。
使用上の注意
ドメイン名を追加した後、TTL値を変更できます。 オリジントラフィックの量と発生した料金は、指定したTTLによって異なります。 リソースTTLは、オリジンフェッチ頻度に影響します。 ビジネス要件に基づいてTTLを指定します。
短いTTLは、頻繁なオリジンフェッチを引き起こし、オリジンサーバーの負荷を増加させる可能性があります。 TTLが長いと、POP上のリソースが期限切れになる可能性があります。
POP上にキャッシュされたリソースがあまり頻繁にアクセスされない場合、リソースは、リソースが期限切れになる前にPOP上で頻繁にアクセスされるリソースによって上書きされ得る。
POPがオリジンサーバーから静的ファイルを取得すると、POPはキャッシュルールの優先順位に基づいてファイルを処理します。 詳細については、「デフォルトのキャッシュルールとキャッシュルールの優先度」をご参照ください。
配信元サーバー上のファイルを更新する場合は、更新後のファイルバージョンを区別するために、ファイル名にバージョン番号を追加することを推奨します。
このように、更新後のファイルの各バージョンは一意の名前を持ちます。 たとえば、ファイルを更新する前にimg-v1.0.jp g、ファイルを更新した後にimg-v2.1.jp gという名前を付けることができます。
手順
Alibaba Cloud CDNコンソール
左側のナビゲーションウィンドウで、ドメイン名.
[ドメイン名] ページで、管理するドメイン名を見つけて、アクション 列の 管理 をクリックします。
ドメイン名の左側のナビゲーションツリーで、キャッシュ設定.
On theキャッシュ有効期限タブをクリックします。追加.
キャッシュ有効期限 ダイアログボックスで、パラメーターを設定します。 下表にパラメーターを示します。
パラメーター
説明
タイプ
ディレクトリ または ファイル拡張子 を選択します。
ディレクトリ: 同じディレクトリ内のリソースのキャッシュルールを作成します。
ファイル拡張子: 同じファイル名拡張子を持つリソースのキャッシュルールを作成します。
アドレス
キャッシュルールを追加するディレクトリまたはファイル名の拡張子を指定します。
[ディレクトリ] を選択した場合、次のルールに注意してください。
一度に入力できるディレクトリは1つだけです。 スラッシュ (/) を使用して、すべてのディレクトリを指定できます。
フルパスを入力できます。 パスはスラッシュ (/) で始まる必要があります。 例: /directory/aaa
[ファイル拡張子] を選択した場合、次のルールに注意してください。
1つ以上のファイル名拡張子を入力できます。 複数のファイル名拡張子はコンマ (,) で区切ります。 例:
jpg,txt
ファイル名拡張子は大文字と小文字が区別されます。
アスタリスク (*) をワイルドカード文字として使用して、すべてのファイルタイプを指定することはできません。
有効期限
TTLを指定します。 最大TTLは3年です。 次のルールに注意してください。
画像やアプリケーションパッケージなど、更新頻度の低い静的ファイルには、1か月以上のTTLを指定します。
JavaScriptやCSSファイルなど、頻繁に更新される静的ファイルのビジネス要件に基づいてTTLを指定します。
PHP、JSP、ASPファイルなどの動的ファイルのキャッシュを無効にするには、TTLを0秒に指定します。
重み
キャッシュルールの重みを指定します。 重みは、キャッシュルールの優先度を指定する。 有効な値: 1 ~ 99。 より大きな値は、より高い優先度を指定する。
説明複数のキャッシュルールを作成する場合は、各キャッシュルールに一意の重みを指定して、キャッシュルールの優先順位を定義することを推奨します。
同じ重みを持つキャッシュルールは、ルールの種類に関係なく、作成時間に基づいて優先順位が付けられます。 作成時間が最も早いルールが優先されます。
キャッシュされたリソースに複数のキャッシュルールを設定した場合、最初に一致したルールのみが有効になります。
ルール条件
ルール条件は、構成が要求に適用されるかどうかを決定するために要求内のパラメータを識別できる。
条件を使用しない
ルールエンジンで設定されたルール条件を選択します。 詳細については、「ルールエンジン」をご参照ください。
クリックOK.
変更 または 削除 をクリックして、キャッシュ有効期限 タブでキャッシュルールを変更または削除できます。
デフォルトのキャッシュルールとキャッシュルール の優先順位
POPがオリジンサーバーから静的ファイルを取得した後、POPは次のキャッシュルールの優先順位に基づいて静的ファイルを処理します。 より小さい数は、より高い優先度を指定する。
レスポンスに
pragma:no-cache
、cache-control:no-cache
、cache-control:no-store
、またはcache-control:max-age=0
ディレクティブが含まれている場合、静的ファイルはキャッシュされません。Alibaba Cloud CDN は、キャッシュされたリソースのTTL、またはコンソールで設定されたHTTPステータスコードのTTLに従います。
説明リクエストが複数のキャッシュルールに一致する場合、優先順位の順序: 重み> 作成時間に基づいて1つのルールのみが有効になります。
複数のキャッシュルールを作成する場合は、各キャッシュルールに一意の重みを指定して、キャッシュルールの優先順位を定義することを推奨します。 より高い重みは、より高い優先度を指定する。
同じ重みを持つキャッシュルールは、ルールの種類に関係なく、作成時間に基づいて優先順位が付けられます。 作成時間が最も早いルールが優先されます。
Alibaba Cloud CDNは、オリジンサーバーに設定された他のキャッシュルールに従います。 配信元サーバーからの応答のヘッダーは、
キャッシュ制御
>期限切れ
>Last-Modified
>ETag
の優先順位の降順です。応答には
Cache-Control
ヘッダーが含まれ、ディレクティブはmax-age
またはs-maxage
で、Cache-Control:max-age=3600などの0より大きい値に設定されます。max-age
ディレクティブとs-maxage
ディレクティブの両方が存在する場合、s-maxage
ディレクティブの値が優先されます。応答は、
Expires
: Tue、11月25日2031 17:25:43GMTなどのExpiresヘッダーを搬送する。レスポンスに
ETag
またはLast-modified
ヘッダーが含まれている場合、TTLは次のルールに基づいて計算されます。応答が
Last − Modified
ヘッダを搬送する場合、TTL = (Current time −Last − Modified
) × 0.1である。 結果が10秒から3,600秒の場合、結果が適用されます。 結果が10秒未満の場合、TTLは10秒です。 結果が3,600秒を超える場合、TTLは3,600秒です。応答に
ETag
ヘッダーのみが含まれる場合、TTLは10秒です。
応答に
ETag
、Last-Modified
、Cache-Control
、またはExpires
ヘッダーが含まれていない場合、静的ファイルはPOPにキャッシュされません。
HTTPキャッシュメカニズム
HTTPには、キャッシュ動作の制御に使用できる3種類のヘッダーがあります。
設定例
例1: POPでTXTファイルを7日間キャッシュする場合は、Alibaba Cloud CDN コンソールでTXTファイルのキャッシュルールを作成し、TTLを7日間に設定します。
例2: 以下のキャッシュルールは、高速化ドメイン名demo.aliyun.com
に設定されています。 POPがリソースhttp://demo.aliyun.com/image/example.png
を検索すると、2つのルールが一致します。 さらに、ルールは同じ重みを持ちます。 この場合、ルールは作成時間に基づいて優先順位が付けられます。 作成時間が最も早いルールの優先度が最も高い。 したがって、/imageディレクトリに設定されたルールが有効になります。