Memorizzazione in cache
Puoi abilitare il caching nell’ambiente di progetto dell’infrastruttura cloud. Se disattivi la memorizzazione in cache, Adobe Commerce distribuisce direttamente i file.
{default} rappresenta il dominio predefinito configurato per il sito. Se il progetto ha più domini, utilizzare il segnaposto {all} per configurare il routing per il dominio predefinito e per tutti gli alias. Vedere Configurare le route.Configurare il caching
Abilitare il caching per l'applicazione configurando le regole di cache nel file .magento/routes.yaml come segue:
http://{default}/:
type: upstream
upstream: php:php
cache:
enabled: true
headers: [ "Accept", "Accept-Language", "X-Language-Locale" ]
cookies: ["*"]
default_ttl: 60
Memorizzazione in cache basata su route
Abilita il caching granulare impostando le regole di caching per diversi percorsi separatamente, come illustrato nell’esempio seguente:
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
L’esempio precedente memorizza in cache le seguenti route:
http://{default}/http://{default}/path/more/http://{default}/path/more/etc/
E le seguenti route sono non memorizzate nella cache:
http://{default}/path/http://{default}/path/etc/
Durata cache
La durata della cache è determinata dal valore dell'intestazione di risposta Cache-Control. Se nella risposta non è presente alcuna intestazione Cache-Control, viene utilizzata la chiave default_ttl.
Chiave cache
Per decidere come memorizzare una risposta nella cache, Adobe Commerce crea una chiave della cache che dipende da diversi fattori e memorizza la risposta associata a tale chiave. Quando una richiesta viene fornita con la stessa chiave cache, la risposta viene riutilizzata. Il suo scopo è simile all'intestazione HTTP Vary.
I parametri headers e le chiavi cookies consentono di modificare questa chiave della cache.
Il valore predefinito per queste chiavi è il seguente:
cache:
enabled: true
headers: ["Accept-Language", "Accept"]
cookies: ["*"]
Attributi cache
enabled
Se è impostato su true, abilitare la cache per questa route. Se è impostato su false, disabilitare la cache per questa route.
headers
Definisce da quali valori deve dipendere la chiave della cache.
Ad esempio, se la chiave headers è:
cache:
enabled: true
headers: ["Accept"]
Quindi Adobe Commerce memorizza nella cache una risposta diversa per ogni valore dell'intestazione HTTP Accept.
cookies
La chiave cookies definisce da quali valori deve dipendere la chiave della cache.
Ad esempio:
cache:
enabled: true
cookies: ["value"]
La chiave della cache dipende dal valore del cookie value nella richiesta.
Esiste un caso speciale se la chiave cookies ha il valore ["*"]. Questo valore significa che qualsiasi richiesta con un cookie bypassa la cache. Questo è il valore predefinito.
*). SESS* o ~SESS sono attualmente non valori validi.I cookie hanno le seguenti restrizioni:
- È stato impostato un massimo di 50 cookie nel sistema. In caso contrario, l'applicazione genera un'eccezione
Unable to send the cookie. Maximum number of cookies would be exceeded. Per aumentare il numero di cookie a 200, applicare la patch MDVA-12304 utilizzando lo strumento Patch di qualità. - La dimensione massima del cookie è 4096 byte. In caso contrario, l'applicazione genera un'eccezione
Unable to send the cookie. Size of '%name' is %size bytes.
default_ttl
Se la risposta non ha un'intestazione Cache-Control, viene utilizzata la chiave default_ttl per definire la durata della cache, in secondi. Il valore predefinito è 0, il che significa che non è memorizzato nella cache.