Les règles d'expiration du cache déterminent la durée pendant laquelle les ressources restent mises en cache sur les points de présence (POP) DCDN. Cette configuration vous permet d'équilibrer l'actualité du contenu, les performances d'accès et les coûts de récupération depuis l'origine. Cette rubrique explique le fonctionnement des règles de cache, leur configuration et leur vérification, ainsi que le dépannage des problèmes de mise en cache. Elle propose également des bonnes pratiques pour les environnements de production.
Notes d'utilisation
-
Vous pouvez modifier la durée de mise en cache après avoir ajouté un nom de domaine. La durée de conservation influence le trafic vers l'origine et les coûts associés. Le délai d'expiration du cache affecte la fréquence des requêtes adressées au serveur d'origine. Définissez la durée de mise en cache des ressources en fonction de vos besoins métier.
Si le délai d'expiration est trop court, CDNDCDN interrogera fréquemment l'origine, ce qui augmentera le trafic sur votre serveur source. À l'inverse, un délai trop long retardera la prise en compte des mises à jour de données.
Une ressource mise en cache sur un POP CDNDCDN peu consulté (c'est-à-dire que les clients ne demandent pas souvent cette ressource sur ce POP spécifique) peut être remplacée par d'autres ressources plus populaires avant même l'expiration de son délai de validité.
Lorsqu'un POP DCDN reçoit un fichier statique depuis le serveur d'origine, il met la ressource en cache selon les règles de cache par défaut de DCDN et leur priorité. Pour connaître les règles applicables aux fichiers dynamiques, consultez la section Présentation des règles d'accélération pour le contenu dynamique et statique.
-
Évitez de mettre à jour le contenu de votre serveur d'origine en conservant le même nom de fichier. Privilégiez l'utilisation de numéros de version pour la synchronisation.
Pour distinguer clairement le contenu avant et après une mise à jour, synchronisez vos données d'origine via des numéros de version. Cela implique d'utiliser des noms de fichiers différents lors des mises à jour. Par exemple, utilisez des noms tels que img-v1.0.jpg et img-v2.1.jpg.
Procédure
Connectez-vous à la console DCDN.
Dans le volet de navigation de gauche, cliquez sur Domain Names.
Sur la page Domain Names, repérez le nom de domaine cible et cliquez sur Configure.
Dans l'arborescence de navigation de gauche du nom de domaine, cliquez sur Caching.
Sous l'onglet Cache Duration, cliquez sur Add.
-
Dans la boîte de dialogue Cache Duration, configurez une règle de cache.

Paramètre
Description
Type
Spécifiez la portée des ressources par Directory ou Filename Extension.
-
Directory : appliquez la même règle de cache à toutes les ressources situées dans un chemin d'accès donné.
-
Filename Extension : appliquez la même règle de cache aux ressources correspondant à un type de fichier spécifique.
Content
Le répertoire ou l'extension de fichier auquel la règle s'applique.
-
Si vous définissez Type sur Directory, tenez compte des éléments suivants :
-
Vous ne pouvez ajouter qu'un seul répertoire à la fois. Une barre oblique (/) correspond à tous les répertoires.
-
Saisissez le chemin complet du répertoire. Le chemin doit commencer par une barre oblique (/). Exemple : /directory/aaa.
-
-
Si vous définissez Type sur Filename Extension, tenez compte des éléments suivants :
-
Vous pouvez saisir une ou plusieurs extensions de fichier. Séparez les différentes extensions par une virgule (,), par exemple
jpg,txt. La saisie respecte la casse.Les extensions de fichier ne se limitent pas aux types de fichiers statiques courants listés ci-dessous. Vous pouvez saisir n'importe quelle extension personnalisée (par exemple,
bytesouunity3d). Le système reconnaît et met en cache les ressources correspondant à ces extensions personnalisées.Types de fichiers statiques pris en charge :
-
Images : GIF, PNG, BMP, JPEG et JPG.
-
Pages Web : HTML, HTM et SHTML.
-
Fichiers audio et vidéo : MP3, WMA, FLV, MP4, WMV, OGG et AVI.
-
Documents : DOC, DOCX, XLS, XLSX, PPT, PPTX, TXT et PDF.
-
Autres : ZIP, EXE, TAT, ICO, CSS, JS, SWF, APK, M3U8, TS, EJS, SVG, WOFF et OTF.
-
-
Vous ne pouvez pas utiliser un astérisque (*) pour correspondre à tous les types de fichiers.
-
Expire In
La durée de vie (TTL) du cache pour les ressources. La durée maximale est de 3 ans. Nous recommandons les paramètres suivants :
-
Pour les fichiers statiques rarement mis à jour, tels que les images et les packages d'applications, définissez le TTL sur un mois ou plus.
-
Pour les fichiers statiques fréquemment mis à jour, tels que les fichiers JS et CSS, définissez un TTL personnalisé selon vos besoins métier.
-
Pour les fichiers dynamiques, tels que les fichiers PHP, JSP et ASP, définissez le TTL sur 0 s afin d'empêcher leur mise en cache.
Honor origin cache policy
Si cette option est activée, les en-têtes de politique de cache provenant du serveur d'origine, tels que Cache-Control et Pragma, sont prioritaires.
Ignore origin no-cache header
Lorsque cette fonctionnalité est activée, les POP DCDN ignorent les en-têtes de politique de cache suivants présents dans la réponse du serveur d'origine. Ces en-têtes indiquent que le contenu ne doit pas être mis en cache.
-
Cache-Control: no-store
-
Cache-Control: no-cache
-
Cache-Control: max-age=0
-
Pragma: no-cache
Client follows DCDN cache policy
Lorsque cette fonctionnalité est activée, les POP DCDN renvoient au client la politique de cache effective.
Force revalidation
Ce paramètre prend effet uniquement lorsque le TTL du cache est défini sur 0. Les effets sont les suivants :
-
Désactivé (par défaut) : lorsque le TTL du cache pour /DCDN est défini sur 0, les POP /DCDN ne mettent pas les fichiers en cache et une récupération depuis l'origine est effectuée pour chaque requête.
-
Activé : lorsque le TTL du cache pour DCDN est défini sur 0, les fichiers peuvent être mis en cache sur les POP DCDN, et chaque requête nécessite une récupération depuis l'origine pour valider le contenu mis en cache.
Weight
La priorité de la règle de cache. Les valeurs valides sont des entiers compris entre 1 et 99. Une valeur plus élevée indique une priorité supérieure. La règle ayant la priorité la plus élevée est appliquée en premier.
Remarque-
Si vous configurez plusieurs règles de cache, attribuez un poids différent à chacune pour contrôler leur priorité d'exécution.
-
Si plusieurs règles ont le même poids, la règle créée en premier possède la priorité la plus élevée, quel que soit le type de règle.
-
Si plusieurs politiques de cache sont configurées, DCDN cesse de faire correspondre les autres politiques dès qu'une politique prend effet.
Rule condition
Une condition de règle identifie diverses informations de paramètres dans une requête utilisateur. Cela détermine si une configuration prend effet pour cette requête.
ImportantLorsque vous référencez des conditions de règle, elles sont mises en correspondance en fonction de la priorité des conditions de règle associées, et non de l'ordre de configuration de la fonctionnalité elle-même.
Do not use : n'utilise pas de condition de règle.
Pour ajouter ou modifier des conditions de règle, gérez-les dans le Rules Engine.
-
-
Cliquez sur OK pour enregistrer la configuration.
Après avoir configuré avec succès une règle de cache, vous la retrouvez dans la liste sous l'onglet Cache Duration. Vous pouvez cliquer sur Modify ou Delete pour gérer la règle.
Règles de cache par défaut d'Alibaba Cloud CDNDCDN et priorités
Pour les réponses de l'origine affichant les codes d'état HTTP 200, 203, 206, 300, 301, 308, or 410, le délai d'expiration du cache est déterminé par les règles suivantes.
Lorsqu'un POP CDNDCDN reçoit une ressource fichier depuis un serveur d'origine, il applique les règles de cache selon l'ordre de priorité suivant. Un numéro plus petit indique une priorité plus élevée.
Si le serveur d'origine répond avec
pragma:no-cache,cache-control:no-cache(ouno-store, oumax-age=0), CDNDCDN ne met pas la ressource en cache.-
Le délai d'expiration du cache ou le délai d'expiration du code d'état défini dans la console CDNDCDN.
RemarqueSi une requête CDNDCDN correspond à plusieurs règles, une seule règle est appliquée. La priorité est déterminée d'abord par le poids, puis par la date de création.
Si vous disposez de plusieurs règles de cache, vous pouvez définir un poids différent pour chaque règle afin de contrôler sa priorité d'exécution. Un poids plus élevé indique une priorité supérieure.
Pour les règles ayant le même poids, la règle créée en premier possède la priorité la plus élevée, quel que soit le type de règle.
-
Autres règles de cache configurées sur le serveur d'origine. L'ordre de priorité, du plus élevé au plus faible, est :
cache-control>expires>last-modified>ETag.Si l'en-tête
cache-controlde la réponse du serveur d'origine spécifie une valeurmax-ageous-maxagesupérieure à 0, l'en-têtecache-controlest utilisé pour définir la durée de vie. Par exemple : cache-control:max-age=3600. Simax-ageets-maxagesont tous deux présents,s-maxageest prioritaire.Si la réponse de l'origine ne contient pas d'en-tête
cache-controlmais contient un en-têteExpires, le délai d'expiration du cache est déterminé par l'en-têteExpires. Par exemple : expires:Tue, 25 Nov 2031 17:25:43 GMT.Si la réponse de l'origine ne contient ni
cache-controlniExpiresmais contientlast-modified, la durée de mise en cache est calculée à l'aide de la formule suivante : (Heure actuelle -last-modified) × 0,1. Si le résultat se situe entre 10 secondes et 3 600 secondes, ce résultat est utilisé. Si le résultat est inférieur à 10 secondes, la durée de mise en cache est de 10 secondes. Si le résultat est supérieur à 3 600 secondes, la durée de mise en cache est de 3 600 secondes.Si la réponse de l'origine ne contient ni
cache-control, niExpires, nilast-modifiedmais contientETag, la ressource est mise en cache pendant 10 secondes.
Si les données renvoyées par le serveur d'origine ne contiennent aucun des en-têtes de réponse liés au cache (
cache-control,expires,last-modified, ouETag), la ressource n'est pas mise en cache par défaut.
Description des informations de réponse du cache
-
Date:Indique l'heure à laquelle le serveur d'origine a envoyé la ressource en réponse au point de présence (POP) CDNDCDN.
Lorsque le POP CDNDCDN revalide la ressource auprès du serveur d'origine en incluant l'en-tête
If-Modified-SinceouIf-None-Matchdans la requête vers l'origine, les informations de date sont mises à jour si le serveur d'origine renvoie un code d'état 304.Le format est l'heure moyenne de Greenwich (GMT), par exemple :
Sat, 19 Apr 2025 08:58:31 GMT.
-
X-Cache:Indique si la ressource demandée a atteint le cache sur le POP CDNDCDN. Le tableau suivant décrit les valeurs possibles.
État
Description
HITLa ressource demandée a atteint le cache sur le POP CDNDCDN.
MISSLa ressource demandée n'a pas atteint le cache sur le POP CDNDCDN. La ressource a été fournie par le serveur d'origine.
-
X-Swift-Cachetime:Indique le temps de cache restant de la ressource sur le POP CDNDCDN, en secondes.
X-Swift-Cachetime=Ali-Swift-Global-Savetime+ Durée d'expiration du cache définie pour CDN -X-Swift-SaveTime.-
X-Swift-Cachetimen'est pas toujours égal à la durée d'expiration du cache définie pour CDNDCDN. Les trois situations suivantes peuvent se produire :X-Swift-Cachetime= Durée d'expiration du cache définie pour CDNDCDN, par exemple, 3 600 secondes.-
X-Swift-Cachetimeest légèrement inférieur à la durée d'expiration du cache définie pour CDNDCDN. Par exemple, la durée d'expiration du cache pour CDNDCDN est définie sur 300 secondes, maisX-Swift-Cachetimeest de 295 secondes. Cela peut être dû aux raisons suivantes :Une latence élevée se produit lorsqu'un POP de niveau 1 récupère des données depuis un POP de niveau 2.
Les horloges des POP de niveau 1 et de niveau 2 ne sont pas synchronisées.
La valeur de
X-Swift-Cachetimeest négative. Cela peut être dû à une modification de la durée d'expiration du cache pour CDNDCDN. Lorsque le client envoie une requête, le cache sur le POP de niveau 1 a expiré, mais le cache sur le POP de niveau 2 n'a pas expiré. Par exemple, la durée d'expiration du cache pour CDNDCDN était initialement de 3 600 secondes et a ensuite été modifiée à 300 secondes. Si un client envoie une requête 600 secondes après la première requête, l'en-tête de réponse estX-Swift-Cachetime:-300. Pour résoudre ce problème, vous pouvez actualiser le cache.
-
X-Swift-SaveTime:Indique l'heure à laquelle la ressource a été mise en cache pour la première fois sur le POP CDNDCDN auquel le client a accédé directement. Il s'agit généralement d'un POP de niveau 1.
Le format est l'heure moyenne de Greenwich (GMT), par exemple :
Sat, 19 Apr 2025 08:58:31 GMT.
-
Ali-Swift-Global-Savetime:Indique l'heure à laquelle la ressource a été mise en cache pour la première fois sur un POP CDNDCDN. Il peut s'agir d'un POP de niveau 2 ou d'un POP situé à un autre niveau de cache, selon l'architecture de cache du site.
Le format est un horodatage UNIX, par exemple :
1745053111, qui représente2025-04-19 16:58:31.
Vérifier l'état du cache des ressources
Après avoir configuré un TTL de cache, utilisez ces méthodes pour vérifier si une ressource est servie depuis le cache DCDN.
-
Méthode 1 : Utiliser la commande curl
Dans le terminal, exécutez la commande suivante pour demander l'URL cible en utilisant
curl -I, et vérifiez le champX-Cachedans l'en-tête de réponse pour déterminer si le cache a été atteint.curl -I http://<accelerated_domain_name>/<resource_path>Dans les en-têtes de réponse, vérifiez le champ
X-Cache:X-Cache: HITindique que la ressource a été servie depuis le cache DCDN.X-Cache: MISSindique que la ressource n'a pas été trouvée dans le cache DCDN et a été servie directement depuis le serveur d'origine.
-
Méthode 2 : Utiliser les outils de développement du navigateur
Utilisez les outils de développement de votre navigateur (F12). Dans l'onglet Réseau, accédez à l'URL de la ressource. Sélectionnez la requête et inspectez l'en-tête
X-Cachedans la réponse.
Mécanismes de contrôle de cache HTTP
Le protocole HTTP définit trois types de mécanismes de contrôle de cache :
Exemples de configuration
Exemple 1 : Pour mettre en cache les fichiers .txt pendant 7 jours, ajoutez une règle de cache dans la console DCDN pour l'extension de nom de fichier .txt et définissez le TTL du cache sur 7 jours.

Exemple 2 : Les politiques de mise en cache suivantes sont configurées pour le nom de domaine accéléré demo.aliyun.com. Lorsqu'un POP DCDN récupère la ressource http://demo.aliyun.com/image/example.png depuis l'origine, deux règles correspondent. Étant donné que les deux règles ont le même poids, le système donne la priorité à la règle créée en premier. La règle pour le répertoire /image a été créée en premier. Par conséquent, la règle basée sur le répertoire prend effet.