Contrôler le comportement de mise en cache d’Azure Content Delivery Network au moyen de règles de mise en cache
Important
Azure CDN Standard de Microsoft (classique) sera mis hors service le 30 septembre 2027. Pour éviter toute interruption de service, il est important de migrer vos profils du niveau Azure CDN Standard de Microsoft (classique) vers le niveau Azure Front Door Standard ou Premium au plus tard le 30 septembre 2027. Pour découvrir plus d’informations, consultez Mise hors service d’Azure CDN Standard de Microsoft (classique).
Azure CDN d’Edgio sera mis hors service le 15 janvier 2025. Pour éviter toute interruption de service, vous devez migrer votre charge de travail vers Azure Front Door avant cette date. Pour plus d’informations, consultez FAQ sur la mise hors service d’Azure CDN d’Edgio.
Cet article explique comment utiliser les règles de mise en cache du réseau de diffusion de contenu pour définir ou modifier le comportement d’expiration du cache par défaut. Ces règles de mise en cache peuvent être globales ou suivre des conditions personnalisées, telles qu’un chemin d’URL et une extension de fichier.
Remarque
Les règles de mise en cache sont disponibles uniquement pour les profils Azure CDN standard d'Edgio. Pour les profils Azure CDN fourni par Microsoft, vous devez utiliser le moteur de règles standard. Pour les profils Azure CDN Premium fourni par Edgio, vous devez utiliser le moteur de règles Edgio Premium dans le portail Gérer pour obtenir une fonctionnalité similaire.
Azure Content Delivery Network offre deux moyens de contrôler la façon dont vos fichiers sont mis en cache :
Règles de mise en cache : Azure Content Delivery Network fournit deux types de règles de mise en cache : globales et personnalisées.
Règles de mise en cache globales : vous pouvez définir une règle de mise en cache globale pour chaque point de terminaison de votre profil, ce qui affecte toutes les requêtes envoyées au point de terminaison. La règle de mise en cache globale se substitue à tous les en-têtes à directive de cache HTTP, s’ils sont définis.
Règles de mise en cache personnalisées : vous pouvez définir une ou plusieurs règles de mise en cache personnalisées pour chaque point de terminaison de votre profil. Les règles de mise en cache personnalisées correspondent à des chemins et des extensions de fichier spécifiques, elles sont traitées dans l’ordre et remplacent la règle de mise en cache globale, si définie.
Mise en cache des chaînes de requête : vous pouvez ajuster la manière dont Azure Content Delivery Network traite la mise en cache pour les requêtes dotées de chaînes de requête. Pour obtenir plus d’informations, consultez Contrôler le comportement de mise en cache d’Azure Content Delivery Network à l’aide de chaînes de requête. Si le fichier ne peut pas être mis en cache, le paramètre de mise en cache d’une chaîne de requête n’a aucun effet compte tenu des règles de mise en cache et des comportements du réseau de distribution de contenu par défaut.
Pour plus d’informations sur le comportement de mise en cache par défaut et sur les en-têtes à directive de mise en cache, consultez Fonctionnement de la mise en cache.
Accéder aux règles de mise en cache d’Azure Content Delivery Network
Ouvrez le Portail Azure, sélectionnez un profil de réseau de distribution de contenu, puis sélectionnez un point de terminaison.
Dans le volet gauche, sous Paramètres, sélectionnez Règles de mise en cache.
La page Règles de mise en cache s’affiche.
Paramètres du comportement de mise en cache
Pour les règles de mise en cache globales et personnalisées, vous pouvez spécifier les paramètres de Comportement de mise en cache suivants :
Contourner le cache : ne pas mettre en cache et ignorer les en-têtes de directive de cache fournis à l’origine.
Écraser : ignorer la durée de cache fournie à l’origine ; utilisez la durée du cache fourni à la place. Ce paramètre ne remplace pas le cache-control : no-cache.
Notes
Pour les profils Azure CDN à partir de Microsoft, le remplacement de l’expiration du cache s’applique uniquement aux codes d’état 200 et 206.
- Définir en cas d’absence : respecter les en-têtes à directive de cache fournis à l’origine, s’ils existent ; sinon, utilisez la durée de cache fournie.
Durée d’expiration du cache
Pour les règles de mise en cache globales et personnalisées, vous pouvez spécifier la durée d’expiration du cache en jours, heures, minutes et secondes :
Pour les paramètres de Comportement de mise en cache Remplacer et Définir en cas d’absence, les durées de cache valides sont comprises entre 0 et 366 jours. Pour une valeur de 0 seconde, le réseau de distribution de contenu met en cache le contenu, mais doit revalider chaque requête avec le serveur d’origine.
Dans le paramètre Contourner le cache, la durée du cache est automatiquement définie sur 0 seconde, une valeur non modifiable.
Conditions de correspondance des règles de mise en cache personnalisées
Pour les règles de cache personnalisées, deux conditions de correspondance sont disponibles :
Chemin : cette condition correspond au chemin de l’URL, à l’exclusion du nom de domaine, et prend en charge le caractère générique (*). Par exemple, /myfile.html, /my/folder/** et /my/images/.jpg. La longueur maximale est de 260 caractères.
Extension : cette condition correspond à l’extension de fichier du fichier demandé. Vous pouvez fournir une liste d’extensions de fichier séparées par des virgules pour la correspondance. Par exemple, .jpg, .mp3 ou .png. Le nombre maximal d’extensions est de 50 et le nombre maximal de caractères par extension est de 16.
Ordre de traitement des règles globales et personnalisées
Les règles de mise en cache globales et personnalisées sont traitées dans l’ordre suivant :
Les règles de mise en cache globales sont prioritaires sur le comportement de mise en cache du réseau de distribution de contenu par défaut (paramètres d’en-tête à directive de cache HTTP).
Les règles de mise en cache personnalisées sont prioritaires sur les règles de mise en cache globales, où elles s’appliquent. Les règles de mise en cache personnalisées sont traitées de haut en bas. Autrement dit, si une requête remplie ces deux conditions, les règles situées au bas de la liste sont prioritaires sur celles qui sont situées en haut. Par conséquent, vous devez placer les règles vraiment spécifiques plus bas dans la liste.
Exemple :
Règles de mise en cache générales :
- Comportement de mise en cache : Remplacer
- Durée d’expiration du cache : un jour
Règle no1 de mise en cache personnalisée :
- Condition de correspondance : Chemin
- Valeur de correspondance : /home/*
- Comportement de mise en cache : Remplacer
- Durée d’expiration du cache : deux jours
Règle no2 de mise en cache personnalisée :
- Condition de correspondance : Extension
- Valeur de correspondance : .html
- Comportement de mise en cache : Définir en cas d’absence
- Durée d’expiration du cache : trois jours
Quand vous définissez ces règles, une requête <nom_d’hôte_du_point_de_terminaison>.azureedge.net/home/index.html déclenche la règle n°2 de mise en cache personnalisée définie sur : Définir en cas d’absence et 3 jours. Par conséquent, si le fichier index.html contient des en-têtes HTTP Cache-Control
ou Expires
, ils sont respectés, mais si vous n’avez pas défini ces en-têtes, le fichier est mis en cache pendant trois jours.
Notes
Les fichiers qui sont mis en cache avant une modification de règle conservent leur paramètre de durée de cache d’origine. Pour réinitialiser leur durée de cache, vous devez vider le fichier.
Les modifications de configuration d’Azure Content Delivery Network peuvent prendre un certain temps pour se propager via le réseau :
- Pour les profils Azure CDN Standard fourni par Edgio, la propagation s’effectue généralement dans un délai de 10 minutes.