Invalidamento di file - Amazon CloudFront

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à.

Invalidamento di file

Se è necessario rimuovere un file dalle cache CloudFront edge prima della scadenza, è possibile effettuare una delle seguenti operazioni:

  • Invalida il file dalle edge cache. La volta successiva che un visualizzatore richiede il file, CloudFront ritorna all'origine per recuperare la versione più recente del file.

  • Utilizza la funzione Versioni multiple dei file per distribuire un'altra versione del file con un nome diverso. Per ulteriori informazioni, consulta Aggiornamento di file esistenti tramite l'utilizzo di nomi file con versione.

Per invalidare i file, puoi specificare il percorso per singoli file o il percorso che termina con il carattere jolly *, che potrebbe essere applicato a un solo file o a molti, come illustrato negli esempi seguenti:

  • /images/image1.jpg

  • /images/image*

  • /images/*

Nota

Se utilizzi l'interfaccia a riga di comando di AWS Command Line Interface (AWS CLI) per l'invalidamento di file e specifichi un percorso che include il carattere jolly *, devi usare le virgolette (") in tutto il percorso.

Ad esempio: aws cloudfront create-invalidation --distribution-id distribution_ID --paths "/*"

Puoi inviare un determinato numero di percorsi di invalidamento gratuitamente ogni mese. Se invii un numero maggiore di percorsi di invalidamento rispetto a quello previsto in un mese, ti verrà addebitata una tariffa per ogni percorso di invalidamento che invii. Per ulteriori informazioni sugli addebiti per l'invalidamento, consulta Pagamento per l'invalidamento di file.

Scelta tra l'invalidamento di file e l'utilizzo di nomi di file con versione

Per controllare le versioni di file che vengono servite dalla distribuzione, puoi invalidare i file o fornire loro nomi di file con versione. Se vuoi aggiornare i file di frequente, ti consigliamo di usare principalmente la funzione Versioni multiple di file per i seguenti motivi:

  • La funzione Versioni multiple consente di controllare quale file viene restituito da una richiesta anche quando l'utente dispone di una versione memorizzata nella cache in locale o in un proxy di memorizzazione nella cache aziendale. Se invalidi il file, l'utente potrebbe continuare a vedere la versione precedente fino alla scadenza delle cache.

  • CloudFront i log di accesso includono i nomi dei file, quindi il controllo delle versioni semplifica l'analisi dei risultati delle modifiche ai file.

  • La funzione Versioni multiple offre un modo per servire diverse versioni dei file a utenti diversi.

  • La funzione Versioni multiple semplifica il roll back e il forward tra le revisioni del file.

  • La funzione Versioni multiple è meno costosa. Il trasferimento di nuove versioni dei file CloudFront su edge location è comunque a pagamento, ma non per l'invalidazione dei file.

Per ulteriori informazioni sulla funzione Versioni multiple dei file, consulta Aggiornamento di file esistenti tramite l'utilizzo di nomi file con versione.

Come stabilire quali file invalidare

Se desideri invalidare più file, ad esempio tutti i file in una directory o tutti i file che iniziano con gli stessi caratteri, puoi includere il carattere jolly * alla fine del percorso di invalidamento. Per ulteriori informazioni sull'utilizzo del carattere *, vedi Invalidation paths.

Se desideri invalidare i file selezionati, ma i tuoi utenti non accedono necessariamente a ogni file nella tua origine, puoi stabilire quali file i visualizzatori hanno richiesto a CloudFront e invalidare solo quelli. Per determinare quali file sono stati richiesti dai visualizzatori, abilita CloudFront la registrazione degli accessi. Per ulteriori informazioni sui log degli accessi al, consultare Configurazione e utilizzo di registri standard (registri di accesso).

Specifica dei file da invalidare

Note importanti su come specificare i file che desideri invalidare.

Distinzione tra lettere maiuscole e minuscole

I percorsi di invalidamento fanno distinzione tra lettere maiuscole e minuscole, per cui /images/image.jpg e /images/Image.jpg specificano due diversi file.

Modifica dell'URI utilizzando una funzione Lambda

Se la tua CloudFront distribuzione attiva una funzione Lambda sugli eventi di richiesta del visualizzatore e se la funzione modifica l'URI del file richiesto, ti consigliamo di invalidare entrambi gli URI per rimuovere il file dalle cache edge: CloudFront

  • L'URI nella richiesta del visualizzatore

  • L'URI dopo la modifica eseguita dalla funzione

Ad esempio, supponiamo che la funzione Lambda modifichi l'URI per un file da questo:

https://d111111abcdef8.cloudfront.net/index.html

a un URI che includa una directory di linguaggio:

https://d111111abcdef8.cloudfront.net/en/index.html

Per invalidare il file, devi specificare i seguenti percorsi:

  • /index.html

  • /en/index.html

Per ulteriori informazioni, consulta Invalidation paths.

Oggetti root predefiniti

Per invalidare l'oggetto root predefinito (file), specifica il percorso nello stesso modo in cui specifichi il percorso per qualsiasi altro file. Per ulteriori informazioni, consulta Come funziona un oggetto root predefinito.

Inoltro dei cookie

Se hai configurato CloudFront per inoltrare i cookie all'origine, le cache CloudFront edge potrebbero contenere diverse versioni del file. Quando invalidi un file, CloudFront invalida ogni versione memorizzata nella cache del file stesso, indipendentemente dai cookie associati. Non puoi selettivamente invalidare alcune versioni e non altre sulla base del cookie associati. Per ulteriori informazioni, consulta Memorizzazione nella cache di contenuti basati su cookie.

Inoltro di intestazioni

Se hai configurato CloudFront l'inoltro di un elenco di intestazioni all'origine e la memorizzazione nella cache in base ai valori delle intestazioni, le cache CloudFront edge potrebbero contenere diverse versioni del file. Quando invalidi un file, CloudFront invalida ogni versione del file memorizzata nella cache indipendentemente dai valori dell'intestazione. Non puoi selettivamente invalidare alcune versioni e non altre sulla base dei valori delle intestazioni. (Se configuri CloudFront per inoltrare tutte le intestazioni all'origine, CloudFront non memorizza nella cache i file). Per ulteriori informazioni, consulta Memorizzazione nella cache di contenuti in base alle intestazioni di richiesta.

Inoltro di stringhe di query

Se hai configurato CloudFront per inoltrare le stringhe di query all'origine, devi includere le stringhe di query quando invalidi i file, come mostrato negli esempi seguenti:

  • /images/image.jpg?parameter1=a

  • /images/image.jpg?parameter1=b

Se le richieste del client includono cinque diverse stringhe di query per lo stesso file, puoi invalidare il file cinque volte, una per ogni stringa di query, oppure utilizzare il carattere jolly * nel percorso di invalidamento, come nell'esempio seguente:

/images/image.jpg*

Per ulteriori informazioni sull'utilizzo di caratteri jolly nel percorso di invalidamento, consulta Invalidation paths. Per ulteriori informazioni sulle stringhe di query, vedi Memorizzazione nella cache di contenuti basati su parametri delle stringhe di query. Per determinare quali stringhe di query sono in uso, è possibile abilitare la registrazione. CloudFront Per ulteriori informazioni, consulta Configurazione e utilizzo di registri standard (registri di accesso).

Massimo consentito

Per informazioni sul numero massimo di invalidazioni consentite, consulta Massima richiesta di invalidamento concorrente.

File Microsoft Smooth Streaming

Non puoi invalidare i file multimediali nel formato Microsoft Smooth Streaming quando hai abilitato Smooth Streaming per il comportamento cache corrispondente.

Caratteri non ASCII o non sicuri nel percorso

Se il percorso include caratteri non ASCII o caratteri non sicuri come indicato in RFC 1738, è necessario codificare tali caratteri in formato URL. Non codificate come URL nessun altro carattere nel percorso, altrimenti non CloudFront invaliderà la vecchia versione del file aggiornato.

Percorsi di invalidamento

Questo percorso è relativo alla distribuzione. Ad esempio, per invalidare il file in https://d111111abcdef8.cloudfront.net/images/image2.jpg, puoi specificare quanto segue:

/images/image2.jpg

Nota

Nella console CloudFront, puoi omettere la barra iniziale nel percorso, in questo modo: images/image2.jpg. Quando si utilizza direttamente l' CloudFront API, i percorsi di invalidazione devono iniziare con una barra iniziale.

Puoi anche invalidare più file contemporaneamente utilizzando il carattere jolly *. Il carattere *, che sostituisce 0 o più caratteri, deve essere l'ultimo carattere nel percorso di invalidamento. Inoltre, se utilizzi l'interfaccia a riga di comando AWS Command Line Interface (AWS CLI) per l'invalidamento di file e specifichi un percorso che include il carattere jolly *, devi usare le virgolette (") nel percorso (ad esempio, "/*").

Di seguito vengono mostrati alcuni esempi:

  • Per invalidare tutti i file in una directory:

    /directory-path/*

  • Per invalidare una directory, tutte le sottodirectory e tutti i file nella directory e nella sottodirectory:

    /directory-path*

  • Per invalidare tutti i file con lo stesso nome, ma estensioni di nome di file diverse, ad esempio logo.jpg, logo.png e logo.gif:

    /directory-path/file-name.*

  • Per invalidare tutti i file in una directory per i quali il nome file inizia con gli stessi caratteri (ad esempio tutti i file per un video in formato HLS), indipendentemente dall'estensione del nome file:

    /nome-percorso della directory / initial-characters-in-file *

  • Quando configuri la cache CloudFront in base ai parametri della stringa di query e desideri invalidare ogni versione di un file:

    /directory-path/file-name.file-name-extension*

  • Per invalidare tutti i file in una distribuzione:

    /*

La lunghezza massima di un percorso è 4.000 caratteri. Non è possibile utilizzare un carattere jolly all'interno del percorso; solo alla fine del percorso.

Per ulteriori informazioni su come invalidare i file utilizzando una funzione Lambda per modificare l'URI, consulta Changing the URI Using a Lambda Function.

Il costo per inviare un percorso di invalidamento è lo stesso a prescindere dal numero di file che si stanno invalidando: un singolo file (/images/logo.jpg) o tutti i file associati a una distribuzione (/*). Per ulteriori informazioni, consulta Prezzi di Amazon CloudFront.

Se il percorso di invalidamento è una directory e se non hai standardizzato un metodo per specificare le directory - con o senza una barra finale (/), ti consigliamo di invalidare la directory con e senza barre finali, ad esempio, /images e /images/.

URL firmati

Se stai usando URL firmati, invalida un file includendo solo la parte di URL prima del punto interrogativo (?).

Invalidamento di file utilizzando la console

È possibile utilizzare la CloudFront console per creare ed eseguire un'invalidazione, visualizzare un elenco delle invalidazioni inviate in precedenza e visualizzare informazioni dettagliate su una singola invalidazione. Puoi anche copiare un invalidamento esistente, modificare l'elenco dei percorsi dei file ed eseguire l'invalidamento modificato. Non è possibile rimuovere gli invalidamenti dall'elenco.

Invalidamento di file

Per invalidare i file utilizzando la console, procedi come segue. CloudFront

Per invalidare i file
  1. Accedi a AWS Management Console e apri la CloudFront console all'indirizzo. https://console.aws.amazon.com/cloudfront/v4/home

  2. Seleziona la distribuzione per la quale desideri invalidare i file.

  3. Seleziona Distribution Settings (Impostazioni distribuzione).

  4. Seleziona la scheda Invalidations (Invalidamenti).

  5. Scegli Create Invalidation (Crea invalidamento).

  6. Per i file da invalidare, immetti un percorso di invalidamento per riga. Per informazioni su come specificare i percorsi di invalidamento, consulta Specifica dei file da invalidare.

    Importante

    Specifica i percorsi dei file attentamente. Non puoi annullare una richiesta di invalidamento dopo l'avvio.

  7. Scegli Invalidate (Invalida).

Copia, modifica e riesecuzione di un invalidamento esistente

Puoi copiare un invalidamento creato precedentemente, aggiornare l'elenco dei percorsi di invalidamento ed eseguire l'invalidamento aggiornato. Non puoi copiare un gruppo di invalidamento esistente, aggiornare i percorsi di invalidamento e salvare l'invalidamento aggiornato senza eseguirlo.

Importante

Se copi un'invalidazione ancora in corso, aggiorna l'elenco dei percorsi di invalidazione, quindi esegui l'invalidazione aggiornata, senza interrompere o eliminare l'invalidazione CloudFront che hai copiato. Se nell'originale e nella copia sono presenti percorsi di invalidazione, CloudFront proverà a invalidare i file due volte, ed entrambe le invalidazioni verranno conteggiate nel numero massimo di invalidazioni gratuite per il mese. Se hai già raggiunto il numero massimo di invalidamenti gratuiti, ti verrà addebitato il costo per entrambi gli invalidamenti di ogni file. Per ulteriori informazioni, consulta Massima richiesta di invalidamento concorrente.

Per copiare, modificare e rieseguire un invalidamento esistente
  1. Accedi e apri la console all'indirizzo. AWS Management Console CloudFront https://console.aws.amazon.com/cloudfront/v4/home

  2. Seleziona la distribuzione che contiene l'invalidamento da copiare.

  3. Seleziona Distribution Settings (Impostazioni distribuzione).

  4. Seleziona la scheda Invalidations (Invalidamenti).

  5. Scegli l'invalidamento da copiare.

    Se non sei sicuro di quale invalidamento copiare, puoi scegliere un invalidamento e selezionare Details (Dettagli) per visualizzare le relative informazioni dettagliate.

  6. Scegli Copia.

  7. Aggiorna l'elenco dei percorsi di invalidamento, ove applicabile.

  8. Scegli Invalidate (Invalida).

Annullamento degli invalidamenti

Quando invii una richiesta di invalidazione a CloudFront, CloudFront inoltra la richiesta a tutte le edge location entro pochi secondi e ciascuna edge location inizia immediatamente a elaborare l'invalidazione. Di conseguenza, non puoi annullare una richiesta di invalidamento dopo averla inviata.

Elenco degli invalidamenti

È possibile visualizzare un elenco delle ultime 100 invalidazioni create ed eseguite per una distribuzione utilizzando la console. CloudFront Se desideri ottenere un elenco di più di 100 invalidamenti, utilizza l'operazione API ListInvalidations. Per ulteriori informazioni, ListInvalidationsconsulta Amazon CloudFront API Reference.

Per elencare gli invalidamenti
  1. Accedi a AWS Management Console e apri la CloudFront console all'indirizzohttps://console.aws.amazon.com/cloudfront/v4/home.

  2. Seleziona la distribuzione per la quale desideri visualizzare un elenco degli invalidamenti.

  3. Seleziona Distribution Settings (Impostazioni distribuzione).

  4. Seleziona la scheda Invalidations (Invalidamenti).

Nota

Non è possibile rimuovere gli invalidamenti dall'elenco.

Visualizzazione di informazioni su un invalidamento

Puoi visualizzare informazioni dettagliate su un invalidamento, tra cui l'ID distribuzione, l'ID invalidamento, lo stato di invalidamento, la data e l'ora in cui l'invalidamento è stato creato e un elenco completo dei percorsi di invalidamento.

Per visualizzare informazioni su un invalidamento
  1. Accedi a AWS Management Console e apri la CloudFront console all'indirizzohttps://console.aws.amazon.com/cloudfront/v4/home.

  2. Seleziona la distribuzione che contiene l'invalidamento di cui vuoi visualizzare informazioni dettagliate.

  3. Seleziona Distribution Settings (Impostazioni distribuzione).

  4. Seleziona la scheda Invalidations (Invalidamenti).

  5. Scegli l'invalidamento applicabile.

  6. Seleziona Details (Dettagli).

Invalidare i file tramite l'API CloudFront

Per informazioni sull'invalidazione degli oggetti e sulla visualizzazione di informazioni sulle invalidazioni tramite l' CloudFront API, consulta i seguenti argomenti nell'Amazon API Reference: CloudFront

Massima richiesta di invalidamento concorrente

Se stai invalidando i file singolarmente, puoi avere richieste di invalidamento per un massimo di 3000 file per distribuzione in corso alla volta. Questa può essere una richiesta di invalidamento per massimo 3000 file, fino a 3000 richieste per un file ciascuna, o qualsiasi altra combinazione che non superi i 3000 file. Ad esempio, puoi inviare 30 richieste di invalidamento che invalidano 100 file ognuna. Finché tutte e 30 le richieste di invalidamento sono ancora in corso, non puoi inviare eventuali ulteriori richieste di invalidamento. Se si supera il limite massimo, viene CloudFront restituito un messaggio di errore.

Se stai utilizzando il carattere jolly *, puoi avere richieste per massimo 15 percorsi di invalidamento in corso alla volta. Puoi anche avere richieste di invalidamento per massimo 3.000 file singoli per distribuzione in corso alla volta; il numero massimo di richieste di invalidamento consentite con carattere jolly è indipendente dal numero massimo di invalidamento singolo dei file.

Pagamento per l'invalidamento di file

I primi 1.000 percorsi di invalidamento che invii al mese sono gratuiti; pagherai ogni percorso di invalidamento oltre i 1.000 in un mese. Un percorso di invalidamento può essere per un singolo file (ad esempio /images/logo.jpg) o per più file (ad esempio /images/*). Un percorso che include il carattere * jolly conta come un percorso unico anche se causa l'invalidazione CloudFront di migliaia di file.

Questo valore massimo di 1000 percorsi di invalidamento gratuiti al mese è valido per il numero totale di percorsi di invalidamento per tutte le distribuzioni create con un account AWS. Ad esempio, se utilizzi l'account AWS john@example.com per creare tre distribuzioni e invii 600 percorsi di invalidamento per ciascuna distribuzione in un determinato mese (per un totale di 1.800 invalidamenti), AWS addebiterà 800 percorsi di invalidamento in quel mese. Per informazioni specifiche sui prezzi di annullamento della validità, consulta i prezzi di Amazon CloudFront. Per ulteriori informazioni sui percorsi di invalidamento, consulta Invalidation paths.