Tous les produits
Search
Centre de documentation

Edge Security Acceleration:Custom cache key

Dernière mise à jour :Aug 12, 2026

Définissez des règles basées sur les chaînes de requête, les en-têtes HTTP ou les cookies pour générer des clés de cache personnalisées. Cette approche unifie l'identité du cache pour les requêtes similaires, améliore le taux de réussite, réduit le temps de réponse et diminue la consommation de bande passante.

Fonctionnement

  • Les clés de cache personnalisées modifient uniquement l'identité du cache, sans altérer l'URL d'origine. La requête vers l'origine reste identique à la requête client.

  • Une clé de cache identifie de manière unique un fichier mis en cache sur un point de présence (POP) ESA. Par défaut, cette clé correspond à l'URL complète de la requête client, paramètres inclus.

Remarques d'utilisation

Si votre clé de cache personnalisée inclut des en-têtes de requête HTTP, des cookies ou des caractéristiques utilisateur, vous ne pouvez pas utiliser la fonctionnalité Purge cache by URL pour purger le cache d'une URL spécifique. Utilisez plutôt Purge cache by custom key.

Cas d'utilisation

Cas d'utilisation 1 : Unifier les clés de cache

Lorsque les URL de requête contiennent des paramètres complexes, le POP ESA traite les demandes pour un même fichier comme des fichiers distincts en raison des variations de paramètres. Cela entraîne une mise en cache séparée et multiplie les requêtes vers l'origine.

La fonctionnalité de clé de cache personnalisée permet d'ignorer les chaînes de requête. Elle unifie ainsi les clés de cache pour une même catégorie de requêtes et réduit le trafic vers l'origine.

image

Cas d'utilisation 2 : Différencier les clés de cache

Si les URL des requêtes client sont identiques, ESA les considère comme des demandes pour le même fichier. Toutefois, le champ client dans l'en-tête de requête HTTP peut indiquer que différents systèmes clients sollicitent des contenus distincts.

Utilisez la fonctionnalité de clé de cache personnalisée pour générer des clés différentes selon le type de client. Chaque requête est alors associée à un fichier mis en cache spécifique.

image

Procédure

Lors de l'application des règles, les requêtes sont évaluées selon la Rule Precedence.

  1. Dans la console ESA, sélectionnez Websites, puis dans la colonne Websites, cliquez sur le site cible.

  2. Dans le volet de navigation de gauche, choisissez Websites > Website.

  3. Cliquez sur Rules et saisissez un Cache Rules.

  4. Sous Create Rule, définissez les conditions de correspondance pour les requêtes entrantes. Pour plus d'informations sur la création d'une expression de règle, consultez Composition of a rule expression.

  5. Dans la section Rule Name, définissez If requests match... sur Cache Eligibility.

  6. Dans la section Cache Eligibility, cliquez sur Eligible for Cache, puis configurez les paramètres suivants.

    image

    Paramètre

    Description

    Custom Cache Keys

    Indique s'il faut activer la fonctionnalité Sort Query String.

    Configure

    Détermine si le caractère ? et la chaîne de requête suivante doivent être supprimés de l'URL de la requête.

    Sort Query Strings

    • Query String : ajoute les noms et valeurs d'en-têtes de requête HTTP spécifiés à la clé de cache.

    • HTTP Request Header : ajoute les noms d'en-têtes de requête HTTP à la clé de cache si ces en-têtes sont présents dans la requête.

    Include these header names and values (enter header name; lowercase only)

    • Check existence (enter header name; lowercase only) : ajoute les noms et valeurs de paramètres de cookies spécifiés à la clé de cache.

    • Cookie : ajoute les noms de paramètres de cookies à la clé de cache si ces cookies sont présents dans la requête.

    • Types de caractères pris en charge pour la saisie :

      • Symboles : ! # $ % & ' * + - . ^ _ ` | ~

      • Chiffres : 0-9

      • Lettres : a-z (lettres anglaises minuscules)

    Include these cookie names and values (enter cookie name; lowercase only)

    • Check existence (enter header name; lowercase only) : génère une clé de cache basée sur le type de client, déduit de l'en-tête User-Agent. Valeurs valides : desktop, tablet, mobile

    • User : génère une clé de cache basée sur le pays ou la région du client, déterminé à partir de son adresse IP.

    • Device Type : génère une clé de cache basée sur la langue du client, extraite de l'en-tête de requête Accept-Language.

    Country/Region

    Protège contre les attaques par usurpation de cache web tout en autorisant la mise en cache du contenu statique.

  7. Cliquez sur Language.

Exemples de configuration

Scénario d'exemple

  • URL de requête utilisateur : http://www.example.com/image.jpg?key123=321&key456=654

  • En-têtes de requête transmis dans la requête utilisateur :

    • name123:321

    • name456:654

    • User-Agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.X.X Safari/537.36

    • Accept-Language:zh-CN

  • Le client utilise une adresse IP China Telecom pour accéder au service.

Configuration de la fonctionnalité

  • Cache Deception Defense : Delete parameter key456

  • OK :

    • Query String : name123

    • HTTP Request Header : name456

  • Include these header names and values (enter header name; lowercase only) : les commutateurs Check existence (enter header name; lowercase only), User et Device Type sont tous activés.

image

Clé de cache générée

Fragments de clé de cache pour chaque paramètre :

  • http://www.example.com/image.jpg?key123=321

  • name123:321

  • name456

  • desktop

  • CN

  • Accept-Language:zh-CN

La clé de cache finale concatène ces fragments : http://example.com/image.jpg?key123=321name123:321name456desktopCNAccept-Language:zh-CN

Documentation connexe

Les fonctionnalités liées aux règles varient en termes de priorité d'application, de réentrance et de granularité. Pour plus de détails, consultez Properties of Rule-Related Features.