Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
È possibile utilizzare un criterio della cache per migliorare il rapporto di accessi della cache controllando i valori (stringhe di query URL, intestazioni HTTP e cookie) inclusi nella chiave della cache. CloudFront fornisce alcuni criteri di cache predefiniti, noti come criteri gestiti, per i casi d'uso comuni. È possibile utilizzare queste policy gestite oppure creare policy della cache personalizzate specifiche per le proprie esigenze. Per ulteriori informazioni sulle policy gestite, consulta Usa politiche di cache gestite.
Una policy della cache contiene le seguenti impostazioni, suddivise in informazioni sulle policy, impostazioni TTL (Time to Live) e impostazioni della chiave della cache.
Informazioni sulle policy
- Nome
-
Un nome per identificare la policy della cache. Nella console, è possibile utilizzare il nome per collegare la policy della cache a un comportamento della cache.
- Descrizione
-
Un commento per descrivere la policy della cache. Questo è facoltativo, ma può aiutare a identificare lo scopo della policy della cache.
Impostazioni Time to Live (TTL)
Le impostazioni time to live (TTL) interagiscono con le intestazioni Cache-Control
e Expires
HTTP (se sono presenti nella risposta di origine) per determinare per quanto tempo gli oggetti nella CloudFront cache restano validi.
- Minimum TTL (TTL minimo)
-
Il periodo di tempo minimo, in secondi, entro il quale gli oggetti devono rimanere nella CloudFront cache prima di CloudFront eseguire controlli con l'origine per verificare se l'oggetto è stato aggiornato. Per ulteriori informazioni, consulta Gestisci la durata della permanenza dei contenuti nella cache (scadenza).
- Maximum TTL (TTL massimo)
-
Il periodo massimo di permanenza, in secondi, degli oggetti nella CloudFront cache prima di CloudFront effettuare controlli con l'origine per verificare se l'oggetto è stato aggiornato. CloudFront utilizza questa impostazione solo quando l'origine invia
Cache-Control
o inserisce leExpires
intestazioni con l'oggetto. Per ulteriori informazioni, consulta Gestisci la durata della permanenza dei contenuti nella cache (scadenza). - Default TTL (TTL di default)
-
Il periodo di tempo predefinito, in secondi, durante il quale desiderate che gli oggetti rimangano nella CloudFront cache prima CloudFront dei controlli con l'origine per verificare se l'oggetto è stato aggiornato. CloudFront utilizza il valore di questa impostazione come TTL dell'oggetto solo quando l'origine non invia
Cache-Control
o non contieneExpires
intestazioni con l'oggetto. Per ulteriori informazioni, consulta Gestisci la durata della permanenza dei contenuti nella cache (scadenza).
Nota
Se le impostazioni TTL minimo, TTL massimo e TTL predefinito sono tutte impostate su 0, la memorizzazione nella cache viene disabilitata. CloudFront
Impostazioni chiave cache
Le impostazioni della chiave cache specificano i valori nelle richieste del visualizzatore CloudFront incluse nella chiave della cache. I valori possono includere stringhe di query URL, intestazioni HTTP e cookie. I valori inclusi nella chiave cache vengono automaticamente inclusi nelle richieste CloudFront inviate all'origine, note come richieste di origine. Per informazioni sul controllo delle richieste di origine senza influire sulla chiave della cache, consulta Controlla le richieste di origine con una policy.
Le impostazioni della chiave della cache includono:
- Headers
-
Le intestazioni HTTP nelle richieste dei visualizzatori CloudFront incluse nella chiave della cache e nelle richieste di origine. Per le intestazioni puoi scegliere una delle seguenti impostazioni:
-
None (Nessuna) - Le intestazioni HTTP nelle richieste del visualizzatore non sono incluse nella chiave della cache e non vengono incluse automaticamente nelle richieste di origine.
-
Includere le seguenti intestazioni - Si specifica quali intestazioni HTTP nelle richieste del visualizzatore sono incluse nella chiave della cache e incluse automaticamente nelle richieste di origine.
Quando si utilizza l'impostazione Includere le seguenti intestazioni, si specificano le intestazioni HTTP in base al loro nome e non al loro valore. Considera, ad esempio, la seguente intestazione HTTP:
Accept-Language: en-US,en;q=0.5
In questo caso, si specifica l'intestazione come
Accept-Language
, non comeAccept-Language: en-US,en;q=0.5
. Tuttavia, CloudFront include l'intestazione completa, incluso il suo valore, nella chiave della cache e nelle richieste di origine.Puoi anche includere alcune intestazioni generate da CloudFront nella chiave della cache. Per ulteriori informazioni, consulta Aggiungi intestazioni CloudFront di richiesta.
-
-
I cookie nelle richieste dei visualizzatori CloudFront incluse nella chiave della cache e nelle richieste di origine. Per i cookie puoi scegliere una delle seguenti impostazioni:
-
None (Nessuno) - I cookie nelle richieste del visualizzatore non sono inclusi nella chiave cache e non vengono automaticamente inclusi nelle richieste di origine.
-
All (Tutti) – I cookie nelle richieste del visualizzatore sono inclusi nella chiave cache e vengono automaticamente inclusi nelle richieste di origine.
-
Includere cookie specifici - Si specifica quali cookie nelle richieste del visualizzatore sono inclusi nella chiave cache e automaticamente inclusi nelle richieste di origine.
-
Includere tutti i cookie tranne - Si specifica quali cookie nelle richieste del visualizzatore non sono inclusi nella chiave cache e non vengono automaticamente inclusi nelle richieste di origine. Tutti gli altri cookie, eccetto quelli specificati, sono inclusi nella chiave cache e automaticamente inclusi nelle richieste di origine.
Quando si utilizza l'impostazione Includere i cookie specificati o Includere tutti i cookie tranne, si specificano i cookie in base al loro nome e non al loro valore. Considera, ad esempio, l’intestazione
Cookie
seguente.Cookie: session_ID=abcd1234
In questo caso, si specifica il cookie come
session_ID
, non comesession_ID=abcd1234
. Tuttavia, CloudFront include il cookie completo, incluso il suo valore, nella chiave della cache e nelle richieste di origine. -
- Stringhe di query
-
Le stringhe di query URL nelle richieste dei visualizzatori CloudFront incluse nella chiave della cache e nelle richieste di origine. Per le stringhe di query, è possibile scegliere una delle seguenti impostazioni:
-
None (Nessuna) – Le stringhe di query nelle richieste del visualizzatore non sono incluse nella chiave cache e non vengono automaticamente incluse nelle richieste di origine.
-
All (Tutte) – Le stringhe di query nelle richieste del visualizzatore sono incluse nella chiave della cache e vengono incluse automaticamente nelle richieste di origine.
-
Includere stringhe di query specifiche - Si specifica quali stringhe di query nelle richieste del visualizzatore devono essere incluse nella chiave cache e incluse automaticamente nelle richieste di origine.
-
Includere tutte le stringhe di query tranne - Si specifica quali stringhe di query nelle richieste del visualizzatore non sono incluse nella chiave cache e non vengono automaticamente incluse nelle richieste di origine. Tutte le altre stringhe di query, eccetto quelle specificate, sono incluse nella chiave cache e incluse automaticamente nelle richieste di origine.
Quando si utilizza l'impostazione Includere le stringhe di query specificate o Includere tutte le stringhe di query, si specificano le stringhe di query in base al loro nome e non al loro valore. Considera, ad esempio, il seguente percorso URL:
/content/stories/example-story.html?split-pages=false
In questo caso, si specifica la stringa di query come
split-pages
, non comesplit-pages=false
. Tuttavia, CloudFront include la stringa di query completa, incluso il relativo valore, nella chiave della cache e nelle richieste di origine. -
- Supporto della compressione
-
Queste impostazioni consentono CloudFront di richiedere e memorizzare nella cache gli oggetti compressi nei formati di compressione Gzip o Brotli, quando il visualizzatore li supporta. Queste impostazioni consentono anche alla compressione CloudFront di funzionare. I visualizzatori indicano il loro supporto per questi formati di compressione con l'intestazione
Accept-Encoding
HTTP.Nota
I browser web Chrome e Firefox supportano la compressione Brotli solo quando la richiesta viene inviata utilizzando HTTPS. Questi browser non supportano Brotli con richieste HTTP.
Attivare queste impostazioni quando si verifica una delle seguenti condizioni:
-
La tua origine restituisce oggetti compressi Gzip quando i visualizzatori li supportano (le richieste contengono l'intestazione
Accept-Encoding
HTTP congzip
come valore). In questo caso, utilizzate l'impostazione Gzip enabled (impostata suEnableAcceptEncodingGzip
true
nell' CloudFront API,, AWS SDKs o). AWS CLI AWS CloudFormation -
L'origine restituisce oggetti compressi Brotli quando i visualizzatori li supportano (le richieste contengono l'intestazione
Accept-Encoding
HTTP conbr
come valore). In questo caso, usa l'impostazione Brotli enabled (impostataEnableAcceptEncodingBrotli
sutrue
nell' CloudFront API, AWS SDKs AWS CLI, o). AWS CloudFormation -
Il comportamento della cache a cui è collegato questo criterio della cache è configurato con la compressione CloudFront. In questo caso, è possibile abilitare la memorizzazione nella cache per Gzip o Brotli, o entrambi. Quando CloudFront la compressione è abilitata, abilitare la memorizzazione nella cache per entrambi i formati può aiutare a ridurre i costi per il trasferimento dei dati su Internet.
Nota
Se abiliti la memorizzazione nella cache per uno o entrambi questi formati di compressione, non includere l'
Accept-Encoding
intestazione in una policy di richiesta di origine associata allo stesso comportamento della cache. CloudFront include sempre questa intestazione nelle richieste di origine quando la memorizzazione nella cache è abilitata per uno di questi formati, quindi l'inclusioneAccept-Encoding
in una policy di richiesta di origine non ha alcun effetto.Se il server di origine non restituisce oggetti compressi Gzip o Brotli o il comportamento della cache non è configurato con la CloudFront compressione, non abilitare la memorizzazione nella cache per gli oggetti compressi. Se lo fai, potrebbe causare una diminuzione del tuo rapporto di hit della cache.
Di seguito viene spiegato come queste impostazioni influiscono su una distribuzione. CloudFront Tutti gli scenari seguenti presuppongono che la richiesta del visualizzatore includa l'intestazione
Accept-Encoding
. Quando la richiesta del visualizzatore non include l'Accept-Encoding
intestazione, CloudFront non include questa intestazione nella chiave della cache e non la include nella richiesta di origine corrispondente.- Quando la memorizzazione nella cache degli oggetti compressi è attivata per entrambi i formati di compressione
-
Se il visualizzatore supporta sia Gzip che Brotli, ovvero se
br
i valorigzip
and sono entrambi presenti nell'Accept-Encoding
intestazione della richiesta del visualizzatore, effettua le seguenti operazioni: CloudFront-
Normalizza l'intestazione
Accept-Encoding: br,gzip
e include l'intestazione normalizzata nella chiave della cache. La chiave della cache non include altri valori presenti nell'intestazioneAccept-Encoding
inviata dal visualizzatore. -
Se la posizione del bordo contiene un oggetto compresso Brotli o Gzip nella cache che corrisponde alla richiesta e non è scaduto, la posizione del bordo restituisce l'oggetto al visualizzatore.
-
Se la edge location non ha un oggetto compresso Brotli o Gzip nella cache che corrisponda alla richiesta e non sia scaduto, CloudFront include l'header () normalizzato nella richiesta di origine corrispondente.
Accept-Encoding: br,gzip
La richiesta di origine non include altri valori presenti nell'intestazioneAccept-Encoding
inviata dal visualizzatore.
Se il visualizzatore supporta un formato di compressione ma non l'altro, ad esempio, se
gzip
è un valore nell'Accept-Encoding
intestazione della richiesta del visualizzatore ma non lo è, esegue le seguenti operazioni:br
CloudFront-
Normalizza l'intestazione
Accept-Encoding: gzip
e include l'intestazione normalizzata nella chiave della cache. La chiave della cache non include altri valori presenti nell'intestazioneAccept-Encoding
inviata dal visualizzatore. -
Se la posizione edge contiene un oggetto compresso Gzip nella cache che corrisponde alla richiesta e non è scaduto, la posizione edge restituisce l'oggetto al visualizzatore.
-
Se la edge location non ha un oggetto compresso Gzip nella cache che corrisponda alla richiesta e non sia scaduto, CloudFront include l'header normalizzato () nella richiesta di origine corrispondente.
Accept-Encoding: gzip
La richiesta di origine non include altri valori presenti nell'intestazioneAccept-Encoding
inviata dal visualizzatore.
Per capire cosa succede CloudFront se il visualizzatore supporta Brotli ma non Gzip, sostituite i due formati di compressione tra loro nell'esempio precedente.
Se il visualizzatore non supporta Brotli o Gzip, ovvero l'
Accept-Encoding
intestazione nella richiesta del visualizzatore non contiene o ha valori:br
gzip
CloudFront-
Non include l'intestazione
Accept-Encoding
nella chiave della cache. -
Include
Accept-Encoding: identity
nella richiesta di origine corrispondente. La richiesta di origine non include altri valori presenti nell'intestazioneAccept-Encoding
inviata dal visualizzatore.
-
- Quando la memorizzazione nella cache degli oggetti compressi è abilitata per un formato di compressione, ma non per l'altro
-
Se il visualizzatore supporta il formato per cui è abilitata la memorizzazione nella cache, ad esempio, se la memorizzazione nella cache degli oggetti compressi è abilitata per Gzip e il visualizzatore supporta Gzip (
gzip
è uno dei valori nell'intestazione della richiesta del visualizzatore), esegue le seguenti operazioni:Accept-Encoding
CloudFront-
Normalizza l'intestazione
Accept-Encoding: gzip
e include l'intestazione normalizzata nella chiave della cache. -
Se la posizione edge contiene un oggetto compresso Gzip nella cache che corrisponde alla richiesta e non è scaduto, la posizione edge restituisce l'oggetto al visualizzatore.
-
Se la edge location non ha un oggetto compresso Gzip nella cache che corrisponde alla richiesta e non è scaduto, CloudFront include l'header normalizzato (
Accept-Encoding: gzip
) nella richiesta di origine corrispondente. La richiesta di origine non include altri valori presenti nell'intestazioneAccept-Encoding
inviata dal visualizzatore.
Questo comportamento è lo stesso quando il visualizzatore supporta sia Gzip che Brotli (l'intestazione
Accept-Encoding
nella richiesta del visualizzatore include entrambigzip
ebr
come valori), perché in questo scenario, la memorizzazione nella cache degli oggetti compressi per Brotli non è abilitata.Per capire cosa CloudFront succede se la memorizzazione nella cache degli oggetti compressi è abilitata per Brotli ma non per Gzip, sostituite i due formati di compressione tra loro nell'esempio precedente.
Se il visualizzatore non supporta il formato di compressione per il quale è abilitata la memorizzazione nella cache (l'
Accept-Encoding
intestazione nella richiesta del visualizzatore non contiene il valore per quel formato),: CloudFront-
Non include l'intestazione
Accept-Encoding
nella chiave della cache. -
Include
Accept-Encoding: identity
nella richiesta di origine corrispondente. La richiesta di origine non include altri valori presenti nell'intestazioneAccept-Encoding
inviata dal visualizzatore.
-
- Quando la memorizzazione nella cache degli oggetti compressi è disabilitata per entrambi i formati
-
Quando la memorizzazione nella cache degli oggetti compressi è disabilitata per entrambi i formati di compressione, CloudFront tratta l'intestazione come qualsiasi altra
Accept-Encoding
intestazione HTTP nella richiesta del visualizzatore. Per impostazione predefinita, non è inclusa nella chiave della cache e non è inclusa nelle richieste di origine. È possibile includerla nell'elenco delle intestazioni in una policy della cache o in una policy di richiesta di origine come qualsiasi altra intestazione HTTP.
-