Je souhaite qu’Amazon CloudFront transmette certains fichiers au lieu de les mettre en cache à des emplacements périphériques.
Résolution
Configuration sur l’origine
Remarque : Si vous utilisez les paramètres de cache hérités, commencez par mettre à jour le comportement de mise en cache de la distribution CloudFront afin de définir la mise en cache d’un objet sur Utiliser les en-têtes de contrôle de cache. Si vous utilisez une politique de cache, CloudFront utilise les paramètres de Cache-Control par défaut de l’origine.
Sur votre application de serveur Web d’origine personnalisée, ajoutez des directives Cache-Control no-cache, no-store ou private aux objets que vous ne souhaitez pas que CloudFront mette en cache. Vous pouvez également ajouter la directive Expiration aux objets que vous ne souhaitez pas que CloudFront mette en cache.
Pour les origines Amazon Simple Storage Service (Amazon S3), utilisez les métadonnées d’objets pour ajouter la directive Cache-Control no-store aux objets que CloudFront ne doit pas mettre en cache. Si vous ne pouvez pas ajouter de métadonnées à chacun des objets, spécifiez la fonction AWS Lambda Lambda@Edge pour la fonction Réponse de l’origine. Utilisez la fonction Lambda@Edge pour mettre à jour la valeur de l’en-tête Cache-Control en fonction de la valeur de l’en-tête content-type ou d’autres paramètres de réponse.
Configuration sur la distribution
Vous pouvez contrôler la durée pendant laquelle CloudFront conserve un objet dans le cache avant d'envoyer une autre requête à l'origine. Définissez les valeurs de durée de vie (TTL) minimale, maximale et par défaut dans le comportement de cache d'une distribution CloudFront. Vous pouvez définir ces valeurs dans une politique de cache associée au comportement du cache ou dans les anciens paramètres de cache.
Pour modifier la configuration sur la distribution à l’aide d’une politique de cache, procédez comme suit :
- Ouvrez la console CloudFront.
- Sélectionnez la distribution que vous souhaitez modifier.
- Choisissez l’onglet Comportements.
- Si vous avez déjà défini un comportement de mise en cache pour les objets que vous ne souhaitez pas que CloudFront mette en cache, sélectionnez ce comportement et choisissez Modifier. Pour créer un comportement de mise en cache, choisissez Créer un comportement.
- Dans Paramètres de demande de cache et à l’origine, sélectionnez Politique de cache et politique de demande à l’origine.
- Dans Politique de cache, sélectionnez Géré - Mise en cache désactivée.
Remarque : Si vous utilisez les anciens paramètres de cache, choisissez Personnaliser dans Mise en cache des objets et définissez les valeurs minimale, maximale et de Durée de vie par défaut sur 0.
- Sélectionnez Enregistrer les modifications.
Remarque : Si vous n’utilisez pas de compartiment Amazon S3 comme origine, définissez un comportement de cache spécifique pour transférer tous les en-têtes vers l’origine. Mettez à jour le comportement de mise en cache, puis définissez Mise en cache basée sur des en-têtes de demande sélectionnés sur Tout.
Informations connexes
Spécifier la durée de mise en cache d’objets par CloudFront
Ajouter, supprimer ou remplacer le contenu distribué par CloudFront