

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Utilisation de l'en-tête Cache-Control pour améliorer les performances de l'application
<a name="Using-headers-to-control-cache-duration"></a>

L'architecture d'hébergement par défaut d'Amplify optimise l'équilibre entre les performances d'hébergement et la disponibilité du déploiement. Pour la plupart des clients, nous recommandons d'utiliser l'architecture par défaut.

Si vous souhaitez mieux contrôler les performances d'une application, vous pouvez définir manuellement l'`Cache-Control`en-tête HTTP afin d'optimiser les performances d'hébergement en conservant le contenu en cache à la périphérie du réseau de diffusion de contenu (CDN) pendant un intervalle plus long.

L'`Cache-Control`en-tête `max-age` et les `s-maxage` directives HTTP affectent la durée de mise en cache du contenu de votre application. La `max-age` directive indique au navigateur pendant combien de temps (en secondes) vous souhaitez que le contenu reste dans le cache avant qu'il ne soit actualisé depuis le serveur d'origine. La `s-maxage` directive remplace `max-age` et vous permet de spécifier la durée (en secondes) pendant laquelle vous souhaitez que le contenu reste sur la périphérie du CDN avant qu'il ne soit actualisé depuis le serveur d'origine.

Les applications hébergées avec Amplify respectent `Cache-Control` les en-têtes envoyés par l'origine, sauf si vous les remplacez par des en-têtes personnalisés que vous définissez. Amplify applique uniquement des en-têtes `Cache-Control` personnalisés pour les réponses réussies avec un `200 OK` code d'état. Cela empêche les réponses aux erreurs d'être mises en cache et diffusées aux autres utilisateurs qui font la même demande.

Vous pouvez ajuster manuellement la `s-maxage` directive pour mieux contrôler les performances et la disponibilité du déploiement de votre application. Par exemple, pour modifier la durée pendant laquelle votre contenu reste en cache à la périphérie, vous pouvez définir manuellement la durée de vie (TTL) en le mettant à jour `s-maxage` à une valeur autre que la valeur par défaut 31536000 secondes (un an).

Vous pouvez définir des en-têtes personnalisés pour une application dans la section **En-têtes personnalisés** de la console Amplify. Pour un exemple de YAML format, voir[Configuration des en-têtes personnalisés de Cache-Control](setting-custom-headers.md#example-cache-headers).

Utilisez la procédure suivante pour définir la `s-maxage` directive afin de conserver le contenu en cache à la périphérie du CDN pendant 24 heures.

**Pour définir un Cache-Control en-tête personnalisé**

1. Connectez-vous à la console [Amplify AWS Management Console](https://console.aws.amazon.com/amplify/) et ouvrez-la.

1. Choisissez l'application pour laquelle vous souhaitez définir des en-têtes personnalisés.

1. Dans le volet de navigation, choisissez **Hosting**, **Custom headers.**

1. Sur la page **En-têtes personnalisés**, choisissez **Modifier**.

1. Dans la fenêtre **Modifier les en-têtes personnalisés**, entrez les informations relatives à votre en-tête personnalisé comme suit :

   1. Pour`pattern`, entrez **\*\*/\*** pour tous les chemins.

   1. Pour `key`, saisissez **Cache-Control**.

   1. Pour `value`, saisissez **s-maxage=86400**.

1. Choisissez **Enregistrer**.

1. Redéployez l'application pour appliquer le nouvel en-tête personnalisé.