Ajoutez, modifiez ou supprimez des en-têtes de requête entrants spécifiques au niveau du edge pour contrôler ce que votre backend reçoit. Par exemple, injectez des en-têtes Accept-Encoding ou Accept-Language afin de personnaliser l'expérience des visiteurs et de suivre leur comportement d'utilisation.
Présentation
La fonctionnalité de modification des en-têtes de requête entrants vous permet d'ajouter, de modifier ou de supprimer des en-têtes de requête au niveau des nœuds edge avant que les requêtes n'atteignent votre origine. Cela vous permet de :
Contrôler le routage vers l'origine : Ajoutez ou modifiez des en-têtes pour définir la manière dont les serveurs d'origine traitent les requêtes.
Enrichir les journaux du backend : Transmettez les informations client (telles que les adresses IP d'origine) via des en-têtes personnalisés à des fins de journalisation et d'analyse.
Supprimer les en-têtes inutiles : Supprimez les en-têtes superflus de la requête d'origine pour réduire la charge et améliorer la sécurité.
Configurer les en-têtes de requête entrants
Prérequis
Avant de commencer, assurez-vous d'avoir :
Créé un site dans la console ESA. Pour plus d'informations, consultez la rubrique Règles.
Activé la fonctionnalité Rules pour votre site.
Étapes
Dans la console ESA, sélectionnez Websites, puis cliquez sur le site cible dans la colonne Websites.
Dans le volet de navigation de gauche, choisissez .
Cliquez sur Modify request header > Client to ESA > Create Rule.
-
Dans la zone Add Request Header Modification Rule, configurez les champs suivants :
Rule Name : Saisissez un nom personnalisé pour la règle.
-
If requests match... : Sélectionnez la condition qui détermine les requêtes auxquelles la règle s'applique.
All Requests : La règle s'applique à toutes les requêtes du site actuel.
Filtered Requests : La règle s'applique uniquement au trafic correspondant à une expression personnalisée. Configurez une expression pour filtrer le trafic.
-
Modify Request Header : Spécifiez l'action à effectuer sur les requêtes correspondantes. Utilisez le tableau suivant pour choisir le type d'opération et le mode.
Operation
Mode
Description
Example
Add
Static
Garantit que l'en-tête de requête spécifié est présent dans la requête envoyée à l'origine. Crée l'en-tête s'il n'existe pas, ou remplace l'en-tête existant portant le même nom.
Pour ajouter un en-tête de requête nommé
x-codeavec la valeurkey1, saisissez :
- Header Name :x-code
- Header Value :key1Dynamic
La valeur de l'en-tête peut être définie sur une expression.
Pour ajouter un en-tête de requête nommé
True-Client-IPavec la valeurip.srcafin d'enregistrer l'adresse IP d'origine du client, saisissez :
- Header Name :True-Client-IP
- Header Value :ip.srcModify
Static
Modifie la valeur d'un en-tête de requête spécifié dans la requête envoyée à l'origine. Cette action ne prend effet que si un en-tête portant le nom spécifié existe déjà ; sinon, aucune action n'est entreprise.
Pour modifier la valeur de l'en-tête de requête nommé
x-codeenkey2dans la requête envoyée à l'origine, saisissez :
- Header Name :x-code
- Header Value :key2Dynamic
La valeur de l'en-tête peut être définie sur une expression.
Pour modifier l'en-tête de requête nommé
True-Client-IPavec la valeurip.srcdans la requête envoyée à l'origine, afin de définir sa valeur sur l'adresse IP d'origine du client, saisissez :
- Header Name :True-Client-IP
- Header Value :ip.srcDelete
Supprime tous les en-têtes de la requête envoyée à l'origine qui correspondent au Header Name spécifié, qu'il existe ou non des en-têtes en double.
Pour supprimer l'en-tête de requête nommé
x-code, saisissez le Header Name :x-code.
Les noms d'en-têtes de requête commençant par
ali-swift,ali-esa-inner,x-swiftoux-sitene peuvent pas être configurés (insensible à la casse).Pour spécifier plusieurs valeurs pour Header Value, séparez-les par une virgule (
,).L'opération Delete fonctionne de la même manière pour les modes Static et Dynamic. L'opération Modify ne prend effet que si la requête d'origine contient un en-tête portant le nom spécifié ; sinon, aucune action n'est entreprise.
Au sein d'une même règle, plusieurs opérations sont exécutées séquentiellement. Si différentes opérations ciblent le même nom d'en-tête, la dernière opération écrase les précédentes.
Exemples de configuration d'expressions dynamiques
Cet exemple montre comment ajouter une expression dynamique qui transmet l'adresse IP d'origine du client dans un en-tête de requête personnalisé.
Ajouter une expression dynamique pour True-Client-IP-IN
Procédure
Dans la console ESA, sélectionnez Websites, puis cliquez sur le site cible dans la colonne Website.
Dans le volet de navigation de gauche, choisissez .
Cliquez sur Websites > Client to ESA > Website.
-
Dans la zone Add Incoming Request Header, configurez les champs suivants :
Rule Name : Saisissez
add-client-ip-in.Match Condition : Sélectionnez All Requests pour appliquer la règle à toutes les requêtes du site actuel.
-
Header Operation :
Type : Dynamic
Operation : Add
Header Name :
True-Client-IP-INHeader Value :
ip.src
Vérification du résultat
Après la configuration, l'en-tête true-client-ip-in contient l'adresse IP d'origine du client.