Perché CloudFront fornisce contenuti obsoleti di Amazon S3?
Utilizzo Amazon CloudFront per fornire oggetti archiviati in Amazon Simple Storage Service (Amazon S3). Ho aggiornato i miei oggetti in Amazon S3, ma la mia distribuzione CloudFront fornisce ancora le versioni precedenti dei file.
Breve descrizione
Per impostazione predefinita, CloudFront memorizza nella cache una risposta da Amazon S3 per 24 ore (TTL predefinito di 86.400 secondi). Se la tua richiesta arriva a una posizione edge che ha fornito la risposta di Amazon S3 entro 24 ore, CloudFront utilizza la risposta memorizzata nella cache. Questo accade anche se hai aggiornato i contenuti in Amazon S3.
Utilizza uno dei seguenti metodi per fornire i contenuti di Amazon S3 aggiornati da CloudFront:
- Invalida i file per rimuovere contenuti.
- Utilizza il controllo delle versioni dei file per aggiornare o rimuovere contenuti.
Risoluzione
Invalida gli oggetti Amazon S3
Puoi invalidare un oggetto Amazon S3 per rimuoverlo dalla cache della distribuzione CloudFront. Dopo aver rimosso l'oggetto dalla cache, la richiesta successiva recupera l'oggetto direttamente da Amazon S3.
Nota:
- Non puoi invalidare versioni specifiche di un oggetto che utilizza cookie o intestazioni per variare la risposta. In questo caso, CloudFront invalida tutte le versioni dell'oggetto.
- A ogni account AWS sono consentiti 1.000 percorsi di annullamento gratuiti al mese. Per ulteriori informazioni, consulta i prezzi di Amazon CloudFront.
Quando crei un'invalidazione, assicurati che i percorsi degli oggetti soddisfino i seguenti requisiti:
- I percorsi degli oggetti devono essere per singoli oggetti oppure devono terminare con il carattere jolly (*). Ad esempio, non puoi eseguire un'invalidazione su un percorso del tipo /images/*.jpeg. perché il percorso non è per un singolo oggetto e non termina con un carattere jolly.
- Il percorso specificato deve riprodurre esattamente le lettere maiuscole e minuscole del percorso dell'oggetto. Le richieste di invalidazione distinguono tra maiuscole e minuscole.
- Per rimuovere versioni specifiche di un oggetto in base a una stringa di query, includi i parametri della stringa di query nel percorso di invalidazione.
Il completamento dell'invalidazione di un oggetto richiede in genere 10-100 secondi. Per verificare lo stato di un'invalidazione, visualizza la distribuzione dalla console CloudFront.
Utilizza il controllo delle versioni dei file
Se aggiorni spesso i contenuti, è consigliabile utilizzare il controllo delle versioni per svuotare la cache della distribuzione CloudFront. Per aggiornamenti frequenti della cache, il controllo delle versioni dei file potrebbe costare meno dell'invalidazione.
Per utilizzare il controllo delle versioni dei file, completare i seguenti passaggi:
- Memorizza le nuove versioni dell'oggetto nell'origine con il numero di versione nel nome della chiave. Ad esempio, se aggiorni /image_v1.png, memorizzi una nuova versione dell'oggetto come /image_v2.png.
- Aggiorna l'oggetto nell'origine ma memorizza nella cache in base a una stringa di query con la versione del file. Ad esempio, la stringa di query si aggiorna da /image.png?ver=1 a /image.png?ver=2. Puoi utilizzare una policy di cache per specificare quali stringhe di query sono incluse nella chiave di cache e nelle richieste di origine.
Nota: puoi sempre richiedere la versione precedente (/image.png?ver=1) finché è disponibile nella cache di CloudFront.
Valuta i seguenti vantaggi e svantaggi di ogni metodo di controllo delle versioni dei file:
- Puoi memorizzare nuove versioni dell'oggetto nell'origine per ripristinare le modifiche a versioni precedenti ancora disponibili con i nomi precedenti. Tuttavia, se memorizzi più versioni di un oggetto, i costi di archiviazione possono aumentare.
- L'aggiornamento degli oggetti nell'origine e il caching in base alla stringa di query possono ridurre i costi di archiviazione. Per essere pronto a eventuali rollback, è consigliabile mantenere offline le versioni precedenti dei file.
Nota: non vi è alcuna correlazione tra i nomi di file o directory specificati con versione e il controllo delle versioni di S3. Il controllo delle versioni di S3 non aggiorna automaticamente i contenuti. Assicurati di specificare correttamente i percorsi dei file perché non puoi annullare una richiesta di invalidazione dopo averla avviata.
Informazioni correlate
Gestisci la durata della permanenza dei contenuti nella cache (scadenza)
Query String Forwarding and Caching (Inoltro e caching di stringhe di query)
- Argomenti
- Networking & Content Delivery
- Lingua
- Italiano

Contenuto pertinente
AWS UFFICIALEAggiornata 4 mesi fa
AWS UFFICIALEAggiornata 4 mesi fa