キャッシュ
クラウドインフラストラクチャプロジェクト環境でキャッシュを有効にできます。 キャッシュを無効にすると、Adobe Commerceはファイルを直接提供します。
{default} プレースホルダーは、サイトに設定された既定のドメインを表します。 プロジェクトに複数のドメインがある場合は、{all} プレースホルダーを使用して、デフォルトドメインとすべてのエイリアスのルーティングを設定します。 ルートの設定を参照してください。キャッシュの設定
次のように.magento/routes.yaml ファイルでキャッシュルールを設定して、アプリケーションのキャッシュを有効にします。
http://{default}/:
type: upstream
upstream: php:php
cache:
enabled: true
headers: [ "Accept", "Accept-Language", "X-Language-Locale" ]
cookies: ["*"]
default_ttl: 60
ルートベースのキャッシュ
次の例に示すように、複数のルートに対して個別にキャッシングルールを設定して、きめ細かいキャッシュを有効にします。
http://{default}/:
type: upstream
upstream: php:php
cache:
enabled: true
http://{default}/path/:
type: upstream
upstream: php:php
cache:
enabled: false
http://{default}/path/more/:
type: upstream
upstream: php:php
cache:
enabled: true
上記の例では、次のルートをキャッシュします。
http://{default}/http://{default}/path/more/http://{default}/path/more/etc/
次のルートはnot キャッシュです:
http://{default}/path/http://{default}/path/etc/
キャッシュ時間
キャッシュ時間は、Cache-Control応答ヘッダー値によって決まります。 応答にCache-Control ヘッダーがない場合、default_ttl キーが使用されます。
キャッシュキー
レスポンスをキャッシュする方法を決定するために、Adobe Commerceは、いくつかの要素に依存するキャッシュキーを作成し、このキーに関連付けられたレスポンスを保存します。 リクエストが同じキャッシュキーを持つ場合、応答は再利用されます。 その目的は、HTTP Vary ヘッダーと似ています。
パラメーターheadersおよびcookies キーを使用すると、このキャッシュキーを変更できます。
これらのキーのデフォルト値は次のとおりです。
cache:
enabled: true
headers: ["Accept-Language", "Accept"]
cookies: ["*"]
キャッシュ属性
enabled
trueに設定した場合は、このルートのキャッシュを有効にします。 falseに設定した場合は、このルートのキャッシュを無効にします。
headers
キャッシュキーが依存する値を定義します。
例えば、headers キーが次の場合です。
cache:
enabled: true
headers: ["Accept"]
次に、Adobe Commerceは、Accept HTTP ヘッダーの値ごとに異なるレスポンスをキャッシュします。
cookies
cookies キーは、キャッシュキーがどの値に依存する必要があるかを定義します。
例:
cache:
enabled: true
cookies: ["value"]
キャッシュキーは、リクエスト内のvalue Cookieの値によって異なります。
cookies キーの値が["*"]の場合、特殊ケースが存在します。 この値は、Cookieを使用したリクエストがキャッシュをバイパスすることを意味します。 これがデフォルト値です。
*)を付けます。 例えば、SESS*または~SESSは現在 not の有効な値です。Cookieには次の制限があります。
- システムには最大 50 Cookie が設定されています。 それ以外の場合は、
Unable to send the cookie. Maximum number of cookies would be exceeded例外がスローされます。 Cookieの数を200に増やすには、品質パッチツール を使用してMDVA-12304 パッチ を適用します。 - 最大Cookie サイズは 4096 バイト です。 それ以外の場合は、
Unable to send the cookie. Size of '%name' is %size bytes例外がスローされます。
default_ttl
応答にCache-Control ヘッダーがない場合、default_ttl キーを使用してキャッシュ時間を秒単位で定義します。 デフォルト値は0です。つまり、何もキャッシュされません。