La modification d’un en-tête de réponse sortant dans Akamai change-t-elle l’objet en cache ?

L'équipe Citead, mis à jour le

En bref. La modification d’un en-tête de réponse sortant dans Akamai s’applique au moment de l’envoi et ne modifie pas l’objet en cache.

Définition : Non. Akamai décrit le comportement de modification des en-têtes de réponse sortants comme une opération effectuée au moment de l’envoi : l’en-tête est appliqué après le traitement de la réponse et sa récupération depuis le serveur d’origine ou le cache, juste avant son envoi au client. L’objet en cache reste donc distinct de cette modification de l’en-tête sortant.

Points clés

  • La documentation Modify Outgoing Response Header d’Akamai indique qu’un en-tête sortant ajouté peut être propre à l’utilisateur à l’origine de la requête sans affecter l’objet en cache.
  • La documentation Modify Incoming Response Header situe l’ajout d’un en-tête entrant avant le traitement de l’objet : si la réponse peut être mise en cache, cet en-tête est stocké avec l’objet en cache.
  • Le comportement sortant prend en charge les actions Ajouter (Add), Supprimer (Remove), Modifier (Modify) et Rechercher et remplacer (Find & Replace) pour les en-têtes de réponse.

Quand l’en-tête sortant est-il appliqué ?

Le comportement sortant d’Akamai modifie l’en-tête de réponse sélectionné selon les paramètres de la règle. La documentation situe l’ajout d’un en-tête après le traitement de la réponse par le serveur Akamai et sa récupération depuis le serveur d’origine du client Akamai ou le cache. Cet ajout intervient juste avant l’envoi au client qui a émis la requête.

Cet ordre de traitement permet à un en-tête de réponse de varier selon la requête, tandis que le corps de la page reste celui de la même page en cache. Akamai donne comme exemple l’adresse IP du demandeur :

Your-IP-Address: <adresse IP extraite de la requête>

L’exemple indique que de nombreux utilisateurs finaux peuvent recevoir la même page en cache, tandis que la valeur de Your-IP-Address correspond à l’adresse IP associée à chaque requête.

En quoi le traitement des réponses entrantes diffère-t-il ?

Le comportement entrant traite les en-têtes des réponses provenant du serveur d’origine. Akamai indique qu’un en-tête entrant ajouté est inséré avant le traitement de l’objet par le serveur Akamai. Si la réponse peut être mise en cache, l’en-tête est stocké avec l’objet en cache.

Cette étape est donc celle que la documentation prévoit lorsque l’en-tête fait partie de l’objet mis en cache par Akamai. La documentation sur le traitement entrant cite Cache-Control et Expires comme exemples d’en-têtes permettant de définir la politique de mise en cache. Elle donne aussi Origin-Server-ID comme exemple d’en-tête de débogage contenant des informations sur le serveur d’origine et le moment où la page a été ajoutée au cache.

Quelles modifications sortantes sont disponibles ?

Le comportement sortant permet d’ajouter, de supprimer ou de modifier des en-têtes de réponse, ou d’y effectuer une recherche et un remplacement. Akamai décrit l’action Modify comme l’équivalent d’un ajout et d’une suppression. Il est possible de sélectionner un en-tête standard ou de saisir un nom d’en-tête personnalisé avec l’option Autre (Other). Les valeurs des en-têtes prennent en charge la syntaxe des expressions de variables Akamai. La saisie de {{ dans le champ de l’option ouvre l’autocomplétion des variables.

L’option Éviter les en-têtes en double (Avoid Duplicate Headers) s’applique uniquement aux en-têtes ajoutés par ce comportement. Elle ne s’applique pas aux en-têtes ajoutés par le serveur d’origine. Pour l’action Find & Replace, la documentation précise que les caractères spéciaux des expressions régulières sont traités comme des caractères littéraux et que l’option Rechercher (Find What) ne prend pas en charge les variables. Le paramètre Occurrences permet de remplacer toutes les correspondances ou uniquement la première occurrence.

Qu’est-ce que cela change pour un site web ?

L’étape sortante s’utilise pour un en-tête dont la valeur envoyée dépend de la requête, comme dans l’exemple documenté Your-IP-Address. Cette valeur est ajoutée lorsqu’Akamai prépare la réponse destinée au client : la page en cache peut donc être réutilisée tandis que l’en-tête varie au moment de l’envoi.

L’étape entrante s’utilise lorsque l’en-tête doit être stocké avec un objet pouvant être mis en cache. La documentation d’Akamai sur le traitement entrant décrit Cache-Control et Expires dans ce contexte, tandis que sa documentation sur le traitement sortant situe l’ajout de l’en-tête après la récupération depuis le serveur d’origine ou le cache.

Questions fréquentes

Une page en cache peut-elle comporter un en-tête sortant propre à chaque utilisateur ?

Oui. L’exemple d’Akamai indique que chaque utilisateur final peut recevoir la même page en cache, tandis que l’en-tête Your-IP-Address correspond à l’adresse IP du demandeur.

Faut-il ajouter Cache-Control avec le comportement sortant ?

Lorsque le résultat attendu est un en-tête stocké avec un objet pouvant être mis en cache, Akamai documente le comportement de modification des en-têtes de réponse entrants pour cette étape et cite Cache-Control comme exemple.

Avoid Duplicate Headers supprime-t-il un en-tête défini par le serveur d’origine ?

Non. Akamai limite cette option aux en-têtes ajoutés au moyen du comportement et précise qu’elle ne s’applique pas aux en-têtes ajoutés par le serveur d’origine.

Sources

  1. Akamai TechDocs, « Modify Outgoing Response Header », sans date
  2. Akamai TechDocs, « Modify Incoming Response Header », sans date

Vérifiez comment une page se lit pour les moteurs de réponse. Ouvrir l’analyseur de score GEO

Testez une page et voyez quoi corriger en premier

L'analyse prend en général moins de 10 secondes et ne demande pas de compte.

400 000+ pages notées dans le benchmark public