Tous les produits
Search
Centre de documentation

Edge Security Acceleration:Configurer l'expiration du cache pour les codes d'état

Dernière mise à jour :Sep 21, 2026

Lorsqu'un nœud CDN DCDN récupère une ressource depuis le serveur d'origine, ce dernier renvoie un code d'état de réponse. Vous pouvez configurer une durée de mise en cache pour ces codes d'état dans Alibaba Cloud CDN DCDN. Lorsqu'un client demande à nouveau la même ressource, CDN DCDN renvoie directement le code d'état sans déclencher de récupération auprès de l'origine, ce qui réduit la charge sur le serveur d'origine. Lorsque la durée de mise en cache configurée expire, une nouvelle récupération auprès de l'origine est déclenchée.

Remarque

Remarque : Lorsque cette fonctionnalité utilise les conditions de règle du moteur de règles (Rules Engine), l'ordre d'exécution suit la priorité du Rules Engine, et non la priorité propre à cette fonctionnalité.

Cas d'utilisation

Utilisez cette fonctionnalité pour contrôler la manière dont les nœuds DCDN mettent en cache les réponses lorsque votre serveur d'origine renvoie des codes d'état autres que 2xx.

Par défaut, DCDN traite les réponses 2xx selon les règles et priorités de mise en cache par défaut d'Alibaba Cloud CDN et DCDN. Si votre origine renvoie fréquemment des codes d'état autres que 2xx, définissez une durée de vie (TTL) pour ces codes afin que les nœuds DCDN renvoient directement les réponses mises en cache, réduisant ainsi la charge sur l'origine.

Exemple

Un fichier est supprimé du serveur d'origine, mais les clients continuent de le demander. Chaque requête déclenche une récupération auprès de l'origine qui renvoie un code 4xx, augmentant ainsi la charge sur l'origine. Si vous mettez en cache les codes d'état 4xx, le nœud DCDN met en cache la réponse 4xx après la première récupération. Les requêtes suivantes effectuées pendant la durée de validité du cache reçoivent directement la réponse 4xx mise en cache.

Règles de mise en cache pour les codes d'état anormaux

  • Pour les codes d'état 204, 301, 305, 404, 405, 414, 424, 429, 500, 501, 502, 503 et 504, les règles de mise en cache sont les suivantes :image

    1. Si le serveur d'origine renvoie l'en-tête de réponse set-cookie, CDN DCDN ne met pas la réponse en cache.

    2. Si le serveur d'origine ne renvoie pas l'en-tête de réponse Set-Cookie, la réponse est mise en cache en fonction de la durée de vie (TTL) du code d'état configurée dans la console CDN DCDN. Si plusieurs règles sont configurées, consultez la section Priorité des règles multiples pour savoir comment la règle effective est déterminée.

    3. Si le serveur d'origine ne renvoie pas l'en-tête de réponse Set-Cookie et qu'aucune durée de vie (TTL) de code d'état n'est configurée dans la console CDN DCDN, la réponse est mise en cache en fonction de l'en-tête de réponse Pragma, Cache-Control ou Expires défini par le serveur d'origine.

    4. Si le serveur d'origine ne renvoie aucun des en-têtes de réponse Set-Cookie, Pragma, Cache-Control ou Expires et qu'aucune durée de vie (TTL) de code d'état n'est configurée dans la console CDN DCDN, la réponse est mise en cache pendant 1 seconde par défaut.

  • Pour les codes d'état 302, 307 et 403, les règles de mise en cache sont les suivantes :image

    1. Si le serveur d'origine renvoie l'en-tête de réponse set-cookie, CDN DCDN ne met pas la réponse en cache.

    2. Si le serveur d'origine ne renvoie pas l'en-tête de réponse Set-Cookie, la réponse est mise en cache en fonction de la durée de vie (TTL) du code d'état configurée dans la console CDN DCDN. Si plusieurs règles sont configurées, consultez la section Priorité des règles multiples pour savoir comment la règle effective est déterminée.

    3. Si le serveur d'origine ne renvoie pas l'en-tête de réponse Set-Cookie et qu'aucune durée de vie (TTL) de code d'état n'est configurée dans la console CDN DCDN, la réponse est mise en cache en fonction de l'en-tête de réponse Pragma, Cache-Control ou Expires défini par le serveur d'origine.

    4. Si le serveur d'origine ne renvoie aucun des en-têtes de réponse Set-Cookie, Pragma, Cache-Control ou Expires et qu'aucune durée de vie (TTL) de code d'état n'est configurée dans la console CDN DCDN, la réponse n'est pas mise en cache.

  • Pour le code d'état 304, CDN DCDN ne met pas la réponse en cache et la durée de mise en cache ne peut être configurée d'aucune manière.

  • Pour les autres codes d'état anormaux, tels que le code 400, les règles de mise en cache sont les suivantes :

    1. Si le serveur d'origine renvoie l'en-tête de réponse set-cookie, CDN DCDN ne met pas la réponse en cache.

    2. Si le serveur d'origine ne renvoie pas l'en-tête de réponse Set-Cookie, la réponse est mise en cache en fonction de la durée de vie (TTL) du code d'état configurée dans la console CDN DCDN. Si plusieurs règles sont configurées, consultez la section Priorité des règles multiples pour savoir comment la règle effective est déterminée.

    3. Dans les autres scénarios, la réponse n'est pas mise en cache.

  • Pour les requêtes utilisant la récupération par plage (range origin fetch), si un nœud CDN DCDN reçoit un code d'état autre que 206 du serveur d'origine, le nœud CDN DCDN supprime les tranches mises en cache (un délai d'expiration lors de la récupération auprès de l'origine ne provoque pas la suppression des fichiers mis en cache).

    Lors d'une récupération par plage, le serveur d'origine divise un fichier volumineux en plusieurs tranches plus petites et les renvoie aux nœuds CDN DCDN. Par exemple, un fichier est divisé en 10 tranches et un nœud CDN DCDN a mis en cache cinq tranches. Lorsque le nœud demande la sixième tranche, le serveur d'origine renvoie un code d'état 5xx. Dans ce cas, les cinq tranches précédemment mises en cache sont toutes supprimées.

Priorité des règles

Lorsqu'une requête correspond à plusieurs règles de mise en cache, une seule prend effet :

  • Ordre d'évaluation :

    Les règles sont évaluées d'abord par type (Extension de fichier > Répertoire), puis par date de création (plus ancienne > plus récente).

  • Priorité pour les règles de types différents : Extension de fichier > Répertoire.

    Par exemple, si une requête utilisateur correspond à deux règles (toutes deux configurées pour le code d'état 404) des types File Extension et Directory, la durée d'expiration du code d'état 404 est déterminée par la règle File Extension. Pour un exemple détaillé, consultez la section Exemples de configuration.

  • Priorité pour les règles du même type : Plus ancienne > Plus récente (de haut en bas dans la liste des règles).

    Par exemple, si une requête utilisateur correspond à deux règles (toutes deux configurées pour le code d'état 404) du même type (toutes deux File Extension ou toutes deux Directory), la durée d'expiration du code d'état 404 est déterminée par la règle créée en premier. Pour un exemple détaillé, consultez la section Exemples de configuration.

Procédure

  1. Connectez-vous à la console DCDN.

  2. Dans le volet de navigation de gauche, cliquez sur Domain Names.

  3. Sur la page Domain Names, localisez le nom de domaine que vous souhaitez gérer et cliquez sur Configure dans la colonne Actions.

  4. Dans l'arborescence de navigation de gauche du nom de domaine, cliquez sur Caching.

  5. Cliquez sur l'onglet Status Codes and Expiration Time.

  6. Cliquez sur Add pour créer une règle de mise en cache pour les codes d'état.

    image

    Type

    Notes

    Type

    Sélectionnez un type : Directory ou File Extension.

    Remarque

    Priorité pour les règles de types différents : File Extension > Directory. Pour plus d'informations, consultez la section Priorité des règles.

    Object

    • Si vous sélectionnez Directory :

      • Vous ne pouvez ajouter qu'un seul répertoire à la fois.

      • Saisissez le chemin complet du répertoire en commençant par /, par exemple /directory/aaa.

    • Si vous sélectionnez File Extension :

      • Saisissez les extensions de fichier séparées par des virgules, par exemple jpg,txt.

        Remarque

        Les extensions de fichier sont sensibles à la casse. Si vous créez des règles pour les mêmes extensions avec des casses différentes (par exemple, jpg,txt et jpg,txt), la règle ultérieure écrase la règle jpg,txt. Créez des règles distinctes pour txt et jpg pour éviter cela.

      • Vous ne pouvez pas utiliser un astérisque (*) pour faire correspondre tous les types de fichiers.

    HTTP Status Codes and Expiration Time

    Spécifiez les codes d'état à mettre en cache et leur durée de vie (TTL) en secondes (maximum : 3 ans) :

    • Séparez plusieurs codes d'état par des virgules (,).

    • Codes 2xx et 3xx : codes individuels uniquement. Par exemple, 201=10 est valide, mais 2xx=12 ne l'est pas.

    • Codes 4xx et 5xx : les codes individuels et les caractères génériques sont pris en charge. Par exemple, 401=10 et 4xx=12 sont tous deux valides.

    Honor Origin TTL

    Lorsque cette option est activée, les en-têtes de cache du serveur d'origine (Cache-Control, Pragma) ont priorité sur la durée de vie (TTL) configurée.

    Ignore Origin No-Cache Header

    Lorsque cette option est activée, les nœuds DCDN ignorent les en-têtes no-cache suivants de l'origine :

    • Cache-Control: no-store

    • Cache-Control: no-cache

    • Cache-Control: max-age=0

    • Pragma: no-cache

    Follow POP TTL

    Lorsque cette option est activée, le nœud DCDN envoie la politique de cache effective finale au client.

    Force Revalidation

    Prend effet uniquement lorsque la durée de vie (TTL) du cache est définie sur 0 :

    • Désactivé (par défaut) : Lorsque la TTL DCDN est de 0, les fichiers ne sont pas mis en cache sur les nœuds DCDN. Chaque requête déclenche une récupération auprès de l'origine.

    • Activé : Lorsque la TTL DCDN est de 0, les fichiers sont mis en cache sur les nœuds DCDN, mais chaque requête déclenche une récupération auprès de l'origine pour revalider.

  7. Cliquez sur OK.

    La nouvelle règle apparaît dans la liste Status Codes and Expiration Time , où vous pouvez la Modify ou la Delete .

Exemples de configuration

  • Exemple 1 : Règle de type Répertoire

    Créez une règle Directory comme illustré ci-dessous :Example 1

    Pour le répertoire /directory/aaa, tous les codes 4xx sont mis en cache pendant 10 secondes et le code 201 pendant 15 secondes. Pendant la durée de validité de la TTL, DCDN répond directement. Après l'expiration, les requêtes sont transférées vers l'origine.

  • Exemple 2 : Règle de type Extension de fichier

    Créez une règle File Extension comme illustré ci-dessous :Example 2

    Pour les fichiers .jpg et .txt, le code 403 est mis en cache pendant 10 secondes et le code 404 pendant 15 secondes. Pendant la durée de validité de la TTL, DCDN répond directement. Après l'expiration, les requêtes sont transférées vers l'origine.

  • Exemple 3 : Priorité pour les règles de types différents

    Une règle Directory et une règle File Extension avec des valeurs de TTL différentes sont créées comme illustré ci-dessous :Example 3

    Un client demande http://example.com/directory/aaa/test.jpg. Le nœud DCDN récupère la ressource depuis l'origine, qui renvoie le code 404. Cette requête correspond à la fois à la règle Directory et à la règle File Extension. Comme File Extension > Directory, la règle File Extension s'applique et le code 404 est mis en cache pendant 20 secondes.

  • Exemple 4 : Priorité pour plusieurs règles du même type

    La Directory rule 1 est créée en premier pour /directory, puis la Directory rule 2 pour /directory/aaa, avec des valeurs de TTL différentes comme illustré ci-dessous :Example 4

    Un client demande http://example.com/directory/aaa/test.jpg. L'origine renvoie le code 404, qui correspond aux deux Directory rules. Comme Plus ancienne > Plus récente, la Directory rule 1 s'applique et le code 404 est mis en cache pendant 15 secondes.

Opérations API associées

Ajouter des noms de domaine par lots