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à.
Intestazioni personalizzate
Le intestazioni HTTP personalizzate consentono di specificare le intestazioni per ogni risposta HTTP. Le intestazioni di risposta possono essere utilizzate per scopi di debug, sicurezza e informativi. Puoi specificare le intestazioni nel AWS Management Console file o scaricando e modificando il customHttp.yml
file di un'app e salvandolo nella directory principale del progetto. Per le procedure dettagliate, consulta Impostazione di intestazioni personalizzate.
In precedenza, le intestazioni HTTP personalizzate venivano specificate per un'app modificando le specifiche di build (buildspec) AWS Management Console o scaricando e aggiornando il amplify.yml
file e salvandolo nella directory principale del progetto. Le intestazioni personalizzate specificate in questo modo devono essere migrate dal buildspec e dal file. amplify.yml
Per istruzioni, consulta Migrazione delle intestazioni personalizzate.
Formato YAML dell'intestazione personalizzato
Specifica le intestazioni personalizzate utilizzando il seguente formato YAML:
customHeaders: - pattern:
'*.json'
headers: - key:'custom-header-name-1'
value:'custom-header-value-1'
- key:'custom-header-name-2'
value:'custom-header-value-2'
- pattern:'/path/*'
headers: - key:'custom-header-name-1'
value:'custom-header-value-2'
Per un monorepo, usa il seguente formato YAML:
applications: - appRoot:
app1
customHeaders: - pattern:'**/*'
headers: - key:'custom-header-name-1'
value:'custom-header-value-1'
- appRoot:app2
customHeaders: - pattern:'/path/*.json'
headers: - key:'custom-header-name-2'
value:'custom-header-value-2'
Quando aggiungi intestazioni personalizzate alla tua app, specificherai i tuoi valori per quanto segue:
- pattern
-
Le intestazioni personalizzate vengono applicate a tutti i percorsi dei file URL che corrispondono al modello.
- headers
-
Definisce le intestazioni che corrispondono al modello del file.
- key
-
Il nome dell'intestazione personalizzata.
- value
-
Il valore dell'intestazione personalizzata.
Per ulteriori informazioni sulle intestazioni HTTP, consulta l'elenco delle intestazioni HTTP
Impostazione di intestazioni personalizzate
Esistono due modi per specificare intestazioni HTTP personalizzate per un'AWS Amplifyapp. Puoi specificare le intestazioni in AWS Management Console oppure puoi specificare le intestazioni scaricando e modificando il customHttp.yml
file di un'app e salvandolo nella directory principale del tuo progetto.
Per impostare intestazioni personalizzate per un'app in AWS Management Console
-
Accedi AWS Management Console e apri la console Amplify
. -
Scegli l'app per cui impostare intestazioni personalizzate.
-
Nel riquadro di navigazione, scegli Impostazioni app, Intestazioni personalizzate.
-
Nella sezione Specifiche dell'intestazione personalizzata, scegli Modifica.
-
Nella finestra Modifica, inserisci le informazioni per le tue intestazioni personalizzate utilizzando il formato YAML dell'intestazione personalizzata.
-
Per
pattern
, inserisci lo schema da abbinare. -
Per
key
, inserisci il nome dell'intestazione personalizzata. -
Per
value
, inserisci il valore dell'intestazione personalizzata.
-
-
Seleziona Salva.
-
Ridistribuisci l'app per applicare le nuove intestazioni personalizzate.
-
Per un'app CI/CD, accedi alla filiale da implementare e scegli Ridistribuisci questa versione. Puoi anche eseguire una nuova build dal tuo repository Git.
-
Per un'app di distribuzione manuale, distribuisci nuovamente l'app nella console Amplify.
-
Per impostare intestazioni personalizzate utilizzando il file customHttp.yml
-
Accedi AWS Management Console e apri la console Amplify
. -
Scegli l'app per cui impostare intestazioni personalizzate.
-
Nel riquadro di navigazione, scegli Impostazioni app, Intestazioni personalizzate.
-
Nella sezione Specifiche dell'intestazione personalizzata, scegli Scarica.
-
Apri il
customHttp.yml
file scaricato nell'editor di codice di tua scelta e inserisci le informazioni per le tue intestazioni personalizzate utilizzando il formato YAML dell'intestazione personalizzata.-
Per
pattern
, inserisci lo schema da abbinare. -
Per
key
, inserisci il nome dell'intestazione personalizzata. -
Per
value
, inserisci il valore dell'intestazione personalizzata.
-
-
Salva il
customHttp.yml
file modificato nella directory principale del tuo progetto. Se stai lavorando con un monorepo, salva ilcustomHttp.yml
file nella cartella principale del tuo repository. -
Ridistribuisci l'app per applicare le nuove intestazioni personalizzate.
-
Per un'app CI/CD, esegui una nuova build dal tuo repository Git che include il nuovo file.
customHttp.yml
-
Per un'app di distribuzione manuale, distribuisci nuovamente l'app nella console Amplify e includi il nuovo
customHttp.yml
file con gli artefatti che carichi.
-
Nota
Le intestazioni personalizzate impostate nel customHttp.yml
file e distribuite nella directory principale dell'app sovrascriveranno le intestazioni personalizzate definite nella sezione Intestazioni personalizzate di. AWS Management Console
Migrazione delle intestazioni personalizzate
In precedenza, le intestazioni HTTP personalizzate venivano specificate per un'app modificando la build spec AWS Management Console o scaricando e aggiornando il amplify.yml
file e salvandolo nella directory principale del progetto. Si consiglia vivamente di migrare le intestazioni personalizzate dal buildspec e dal file. amplify.yml
Specifica le intestazioni personalizzate nella sezione Intestazioni personalizzate di AWS Management Console o scaricando e modificando il customHttp.yml
file.
Per migrare le intestazioni personalizzate archiviate nella console Amplify
-
Accedi AWS Management Console e apri la console Amplify
. -
Scegli l'app su cui eseguire la migrazione dell'intestazione personalizzata.
-
Nel riquadro di navigazione, scegli Impostazioni app, Impostazioni di creazione. Nella sezione delle specifiche di creazione dell'app, puoi esaminare le specifiche di build della tua app.
-
Scegli Scarica per salvare una copia della tua build attuale. È possibile fare riferimento a questa copia in un secondo momento se è necessario ripristinare le impostazioni.
-
Quando il download è completo, scegli Modifica.
-
Prendi nota delle informazioni personalizzate dell'intestazione del file, poiché le utilizzerai più avanti nel passaggio 9. Nella finestra Modifica, elimina tutte le intestazioni personalizzate dal file e scegli Salva.
-
Nel riquadro di navigazione, scegli Impostazioni app, Intestazioni personalizzate.
-
Nella sezione Specifiche dell'intestazione personalizzata, scegli Modifica.
-
Nella finestra Modifica, inserisci le informazioni relative alle intestazioni personalizzate che hai eliminato nel passaggio 6.
-
Seleziona Salva.
-
Ridistribuisci qualsiasi ramo a cui desideri applicare le nuove intestazioni personalizzate.
Per migrare le intestazioni personalizzate da amplify.yml a CustomHttp.yml
-
Vai al
amplify.yml
file attualmente distribuito nella directory principale della tua app. -
Apri
amplify.yml
nell'editor di codice di tua scelta. -
Prendi nota delle informazioni personalizzate dell'intestazione del file, poiché le utilizzerai più avanti nel passaggio 8. Elimina le intestazioni personalizzate nel file. Salva e chiudi il file.
-
Accedi AWS Management Console e apri la console Amplify
. -
Scegli l'app per cui impostare intestazioni personalizzate.
-
Nel riquadro di navigazione, scegli Impostazioni app, Intestazioni personalizzate.
-
Nella sezione Specifiche dell'intestazione personalizzata, scegli Scarica.
-
Apri il
customHttp.yml
file scaricato nell'editor di codice di tua scelta e inserisci le informazioni per le intestazioni personalizzate che hai eliminatoamplify.yml
nel passaggio 3. -
Salva il
customHttp.yml
file modificato nella directory principale del tuo progetto. Se stai lavorando con un monorepo, salva il file nella cartella principale del tuo repository. -
Ridistribuisci l'app per applicare le nuove intestazioni personalizzate.
-
Per un'app CI/CD, esegui una nuova build dal tuo repository Git che include il nuovo file.
customHttp.yml
-
Per un'app di distribuzione manuale, distribuisci nuovamente l'app nella console Amplify e includi il nuovo
customHttp.yml
file con gli artefatti che carichi.
-
Nota
Le intestazioni personalizzate impostate nel customHttp.yml
file e distribuite nella directory principale dell'app sovrascriveranno le intestazioni personalizzate definite nella sezione Intestazioni personalizzate di. AWS Management Console
Header personalizzati Monorepo
Quando specifichi intestazioni personalizzate per un'app in un monorepo, tieni presente i seguenti requisiti di configurazione:
-
Esiste un formato YAML specifico per un monorepo. Per la sintassi corretta, vedereFormato YAML dell'intestazione personalizzato.
-
È possibile specificare intestazioni personalizzate per un'applicazione in un monorepo utilizzando la sezione Intestazioni personalizzate di. AWS Management Console Tieni presente che devi ridistribuire l'applicazione per applicare le nuove intestazioni personalizzate.
-
In alternativa all'utilizzo della console, puoi specificare intestazioni personalizzate per un'app in un monorepo in un file.
customHttp.yml
È necessario salvare ilcustomHttp.yml
file nella cartella principale del repository e quindi ridistribuire l'applicazione per applicare le nuove intestazioni personalizzate. Le intestazioni personalizzate specificate nelcustomHttp.yml
file sovrascrivono tutte le intestazioni personalizzate specificate utilizzando la sezione Intestazioni personalizzate di. AWS Management Console
Esempio di intestazioni di sicurezza
Le intestazioni di sicurezza personalizzate consentono di applicare il protocollo HTTPS, prevenire gli attacchi XSS e difendere il browser dal clickjacking. Usa la seguente sintassi YAML per applicare intestazioni di sicurezza personalizzate alla tua app.
customHeaders: - pattern: '**' headers: - key: 'Strict-Transport-Security' value: 'max-age=31536000; includeSubDomains' - key: 'X-Frame-Options' value: 'SAMEORIGIN' - key: 'X-XSS-Protection' value: '1; mode=block' - key: 'X-Content-Type-Options' value: 'nosniff' - key: 'Content-Security-Policy' value: "default-src 'self'"
Esempio di intestazione di controllo della cache
Puoi modificare manualmente la s-maxage
direttiva per avere un maggiore controllo sulle prestazioni e sulla disponibilità di distribuzione della tua app. Ad esempio, per aumentare il periodo di tempo in cui i contenuti rimangono memorizzati nella cache periferica, puoi aumentare manualmente il time to live (TTL) aggiornandolo s-maxage
a un valore più lungo del valore predefinito di 600 secondi (10 minuti).
Per specificare un valore personalizzato pers-maxage
, utilizzate il seguente formato YAML. Questo esempio mantiene il contenuto associato memorizzato nella cache periferica per 3600 secondi (un'ora).
customHeaders: - pattern: '/img/*' headers: - key: 'Cache-Control' value: 's-maxage=3600'
Per ulteriori informazioni sul controllo delle prestazioni delle applicazioni con le intestazioni, vedereUtilizzo delle intestazioni per controllare la durata della cache.