Informatique en nuage et centres de données

Cloudflare permet de contrôler la variation des réponses HTTP via Cache Rules pour toutes les offres

Cloudflare a ajouté la prise en charge de l’en-tête HTTP Vary dans Cache Rules pour toutes les offres, avec des options permettant de normaliser les valeurs des en-têtes, de les transmettre telles quelles ou de contourner la mise en cache. Cette mise à jour vise à empêcher les réponses incorrectes et à réduire la fragmentation du cache causée par des différences sans importance dans les requêtes.

2026-09-22
5 min de lecture
2 vues
certi.news Editorial Team
Cloudflare permet de contrôler la variation des réponses HTTP via Cache Rules pour toutes les offres

Cloudflare a annoncé la prise en charge de l’en-tête de réponse HTTP Vary dans la fonctionnalité Cache Rules pour toutes ses offres, notamment Free, Pro, Business et Enterprise. Cette extension donne aux administrateurs de sites un contrôle accru sur la manière dont le réseau traite les requêtes susceptibles de produire plusieurs représentations d’une même ressource, par exemple en fonction de la langue, du format des images, du type de contenu ou de la méthode de compression.

Le serveur d’origine indique via Vary quels en-têtes de requête peuvent influencer la réponse, mais cet en-tête ne précise pas si toutes les différences textuelles entre les valeurs de ces en-têtes entraînent effectivement une réponse différente. Le système de mise en cache peut donc traiter des valeurs proches comme des versions indépendantes, fragmentant ainsi le contenu en un grand nombre d’éléments peu réutilisés.

Trois méthodes pour gérer les variations

Cloudflare permet d’appliquer à chaque en-tête mentionné par la source dans Vary l’une de trois actions :

  • normalize : normaliser les valeurs avant de sélectionner la version mise en cache. Il s’agit de l’option recommandée pour les en-têtes de négociation tels que Accept, Accept-Language et Accept-Encoding, lorsque de nombreuses valeurs se transforment en un nombre limité de réponses.
  • passthrough : utiliser la valeur brute, y compris la casse, les espaces, l’ordre et les valeurs dupliquées, lorsque la différence précise influence la réponse.
  • bypass : ne pas mettre la réponse en cache si l’en-tête indiqué dans Vary est personnel ou présente une forte cardinalité, comme Cookie ou User-Agent.

En revanche, Vary: * entraîne toujours le contournement de la mise en cache, car n’importe quelle partie de la requête, y compris des informations extérieures au message HTTP comme l’adresse IP, peut influencer le choix de la réponse par la source.

Qu’est-ce qui change concrètement ?

Avec la normalisation, des requêtes présentant des différences de forme mais préférant le même résultat peuvent partager la version mise en cache. Cloudflare réduit les valeurs de Accept, Accept-Language et Accept-Encoding à un format unifié : les valeurs sont converties en minuscules et triées selon leur priorité de qualité, avec un tri alphabétique en cas d’égalité. L’administrateur peut également définir les types de médias ou les langues pris en charge, tels que text/html et application/json, ou en, fr et de.

Cependant, ce comportement peut supprimer des différences dont la source a besoin. Cloudflare indique que les valeurs q=0 ou certaines exceptions linguistiques peuvent disparaître lors de la simplification ; il convient donc d’utiliser passthrough si la source doit voir ces exclusions exactement comme le client les a envoyées. La transmission des valeurs brutes peut également réintroduire le problème de fragmentation : des valeurs telles que compact,full et compact, full peuvent produire deux clés de cache différentes, même si la source les considère comme équivalentes.

Responsabilité de la source et limites de la mise à jour

La source doit renvoyer Vary de manière cohérente avec chaque réponse pouvant être mise en cache et susceptible de varier selon les en-têtes de requête, y compris les réponses de secours et les erreurs. Si l’une des réponses omet l’en-tête approprié, Cloudflare peut mettre cette réponse en cache sans l’isolation requise.

La modification des paramètres de Vary ne supprime pas automatiquement le contenu existant ; les entrées peuvent rester présentes jusqu’à leur expiration ou jusqu’à l’exécution d’une opération de purge. De même, le paramètre Vary ne remplace pas dans tous les cas une clé de cache personnalisée : Cloudflare recommande d’utiliser la clé personnalisée lorsqu’une propriété de la requête fait partie intégrante de l’identité de la ressource, et d’utiliser Vary lorsque la source indique, dans la réponse, les champs qui l’influencent effectivement.

Pourquoi cette actualité est-elle importante ?

Cette mise à jour répond à un compromis concret dans les réseaux CDN : ignorer Vary peut envoyer au client un format ou une langue incorrects, tandis que traiter littéralement chaque valeur peut réduire le taux de succès du cache et augmenter le nombre de requêtes renvoyées vers la source. Selon l’article, une analyse de plus de 120 millions de réponses provenant d’environ 50 000 sites populaires a montré que près de 3 000 sites utilisent la variation via au moins quatre champs, certains en utilisant 10, 23 ou 47.

L’avantage reste lié à la qualité de la définition, par la source, des représentations qu’elle fournit, ainsi qu’au choix de l’action appropriée pour chaque en-tête. Les paramètres sont disponibles depuis le tableau de bord Cloudflare, la Rulesets API ou Terraform, avec la nécessité de tester les différentes valeurs et de surveiller CF-Cache-Status après le déploiement.

Source de l’actualité
c
Auteur

certi.news Editorial Team

Dans la même catégorie

À lire également

Voir toutes les actualités