Tous les produits
Search
Centre de documentation

CDN:Modifier les en-têtes de requête sortants

Dernière mise à jour :Aug 18, 2026

Par défaut, Alibaba Cloud CDN et DCDN transmettent les en-têtes de requête, tels que ceux contenant l'adresse IP du client. Vous pouvez également configurer des en-têtes personnalisés. Modifiez les en-têtes de requête sortants pour réécrire les en-têtes HTTP dans les requêtes envoyées à l'origine. Cette fonctionnalité vous permet d'ajouter, de supprimer, de modifier ou de remplacer les en-têtes de requête HTTP vers l'origine afin de répondre aux exigences de votre activité.

Informations générales

Un en-tête de requête HTTP fait partie d'un message de requête HTTP et sert à transmettre des informations de paramètres spécifiques à un serveur.

Lorsqu'un point de présence (POP) CDN ou DCDN envoie une requête à un serveur d'origine pour récupérer des ressources, le serveur d'origine peut accéder aux informations contenues dans l'en-tête de la requête vers l'origine. Utilisez cette fonctionnalité pour réécrire les informations d'en-tête HTTP dans les requêtes vers l'origine et envoyer des paramètres spécifiques à votre serveur d'origine.

Pour savoir comment un serveur d'origine récupère l'adresse IP réelle du client à partir de l'en-tête X-Forwarded-For dans une requête vers l'origine, consultez la rubrique Obtenir l'adresse IP réelle d'un client.

image

Notes d'utilisation

  • Une requête sortante est un message HTTP envoyé par CDNDCDN à un serveur d'origine. La modification de la configuration des en-têtes de requête sortants affecte uniquement les messages HTTP envoyés par CDNDCDN à un serveur d'origine. Cette configuration n'affecte pas les messages HTTP servis directement depuis les POP CDNDCDN aux utilisateurs.

  • Vous ne pouvez pas modifier les en-têtes de requête sortants pour un nom de domaine générique (wildcard).

  • Si cette fonctionnalité est configurée avec des conditions issues du moteur de règles, l'ordre d'exécution est déterminé par la priorité des conditions de règle, et non par l'ordre de configuration de la fonctionnalité.

  • Par défaut, Alibaba Cloud CDN et DCDN incluent les en-têtes de requête HTTP suivants dans les requêtes vers l'origine. Aucune configuration supplémentaire n'est requise.

    En-tête HTTP vers l'origine

    Description

    Exemple

    Ali-Cdn-Real-Ip

    L'adresse IP réelle du client se connectant à un POP CDN ou DCDN.

    Ali-Cdn-Real-Ip:192.168.0.1

    X-Forwarded-For

    Les adresses IP du client et de tous les POP intermédiaires CDN ou DCDN situés sur le chemin de la requête vers l'origine.

    X-Forwarded-For:192.168.0.1, 172.16.0.1

    X-Client-Scheme

    Le protocole de la couche application, tel que HTTP ou HTTPS, utilisé par un client pour envoyer une requête à un POP CDN ou DCDN.

    X-Client-Scheme:http

    Host

    Le nom de domaine du site web d'origine accédé par la requête vers l'origine.

    Host:example.com

    Via

    Les noms de tous les POP CDN ou DCDN traversés par la requête du client.

    Via:cn2546-10.l1, cache1.cn2546-10, l2cn2547-7.l2, cache1.l2cn2547-7

  • Si vous définissez la valeur d'un en-tête de requête sortant sur une variable, celle-ci est résolue avec sa valeur réelle au moment de l'exécution. Les variables suivantes sont disponibles.

    Paramètre

    En-tête HTTP vers l'origine

    Description

    Exemple

    Ali-Cdn-Real-Port

    $http_Ali_Cdn_Real_Port

    Ajoute le port réel du client à l'en-tête de la requête vers l'origine pour transmettre les informations de port au serveur d'origine.

    Ali-Cdn-Real-Port:80

    Ali-Cdn-Real-Ip

    $http_Ali_Cdn_Real_Ip

    Ajoute l'adresse IP réelle du client à l'en-tête de la requête vers l'origine pour transmettre les informations d'adresse IP du client au serveur d'origine.

    Ali-Cdn-Real-Ip:192.168.0.1

    x_forwarded_for

    $proxy_add_x_forwarded_for

    Ajoute l'adresse IP du client et les adresses IP des serveurs proxy intermédiaires à l'en-tête X-Forwarded-For pour les transmettre au serveur d'origine.

    X-Forwarded-For:192.168.0.1, 172.16.0.1

FAQ

Champs d'en-tête HTTP requis manquants

En tant que proxy intermédiaire, CDN ne peut pas insérer directement des en-têtes de réponse HTTP manquants, tels que Cache-Control, dans les réponses pour corriger les vulnérabilités de sécurité. CDN peut uniquement modifier les en-têtes de requête vers l'origine.

Nous vous recommandons de configurer des en-têtes de requête vers l'origine personnalisés dans la console CDN pour transmettre les paramètres requis à votre serveur d'origine, comme une instance CLB. Si votre serveur d'origine ne prend pas en charge cette option ou ne peut pas être modifié, CDN ne propose pas d'autre moyen d'ajouter directement des en-têtes de réponse.

Remarque

Pour ajouter des en-têtes HTTP aux réponses que CDN envoie aux clients, consultez la rubrique Modifier les en-têtes de réponse sortants.

En-têtes HTTP personnalisés et vitesse d'accès

Non. La configuration d'en-têtes de requête vers l'origine personnalisés dans CDN n'affecte pas la vitesse d'accès.

Procédure

  1. Connectez-vous à la console CDN.

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

  3. Sur la page Domain Names, localisez le nom de domaine cible et cliquez sur Manage dans la colonne Actions.

  4. Dans le volet de navigation du domaine, cliquez sur Origin Fetch.

  5. Cliquez sur l'onglet Modify Outgoing Request Header.

  6. Cliquez sur Customize.

  7. Configurez l'en-tête de requête sortant.

    Important

    Si vous configurez différentes opérations pour le même en-tête de requête vers l'origine, un conflit survient et l'opération ayant la priorité la plus élevée est exécutée. L'ordre de priorité est le suivant : Replace > Add > Change et Delete.

    Ajouter un en-tête

    Paramètre

    Exemple

    Description

    Operation

    Ajouter

    Ajoute l'en-tête de requête spécifié aux requêtes vers l'origine.

    Request Header

    En-tête de requête vers l'origine personnalisé

    Sélectionnez Custom Back-to-origin Request Headers ou un en-tête de requête prédéfini.

    Header Name

    x-code

    Spécifie x-code comme nom d'en-tête de requête personnalisé.

    Header Value

    key1, key2

    Vous pouvez configurer plusieurs valeurs pour un en-tête de requête. Séparez les différentes valeurs par une virgule (,).

    Allow Duplicates

    Oui

    • Yes : Autorise l'ajout d'en-têtes de requête en double. Par exemple, x-code:key1 et x-code:key2.

    • No : Si vous ajoutez un en-tête portant le même nom, la nouvelle valeur écrase la valeur existante. Par exemple, si vous ajoutez d'abord x-code:key1 puis x-code:key2, la valeur finale sera x-code:key2.

    Rule Condition

    Ne pas utiliser

    Les conditions de règle identifient divers paramètres dans les requêtes des utilisateurs pour déterminer si une configuration s'applique à une requête spécifique.

    Important

    Lorsque vous utilisez une condition de règle, la correspondance est basée sur la priorité de la condition de règle associée, et non sur l'ordre de configuration de la fonctionnalité elle-même.

    • Ne pas utiliser : Aucune condition de règle n'est utilisée.

    • Pour ajouter ou modifier une condition de règle, accédez au moteur de règles.

    Supprimer un en-tête

    Paramètre

    Exemple

    Description

    Operation

    Supprimer

    Supprime tous les en-têtes correspondant au nom spécifié, y compris les doublons.

    Request Header

    En-tête de requête vers l'origine personnalisé

    Sélectionnez Custom Back-to-origin Request Headers ou un en-tête de requête prédéfini.

    Header Name

    x-code

    Spécifie x-code comme nom d'en-tête de requête personnalisé.

    Rule Condition

    Ne pas utiliser

    Une condition de règle identifie diverses informations de paramètres dans une requête utilisateur. Cela détermine si une configuration prend effet pour cette requête.

    • Ne pas utiliser : N'utilise pas de condition de règle.

    • Pour ajouter ou modifier des conditions de règle, gérez-les dans le moteur de règles.

    Modifier un en-tête

    Paramètre

    Exemple

    Description

    Operation

    Modifier

    Modifie la valeur d'un en-tête. Cette opération n'est pas autorisée si des en-têtes en double portant le même nom existent.

    Request Header

    En-tête de requête vers l'origine personnalisé

    Sélectionnez Custom Back-to-origin Request Headers ou un en-tête de requête prédéfini.

    Header Name

    x-code

    Spécifie x-code comme nom d'en-tête de requête personnalisé.

    Change Value To

    key1, key3

    Vous pouvez configurer plusieurs valeurs pour un en-tête de requête. Séparez les différentes valeurs par une virgule (,).

    Rule Condition

    Ne pas utiliser

    Une condition de règle identifie diverses informations de paramètres dans une requête utilisateur. Cela détermine si une configuration prend effet pour cette requête.

    • Ne pas utiliser : N'utilise pas de condition de règle.

    • Pour ajouter ou modifier des conditions de règle, gérez-les dans le moteur de règles.

    Remplacer un en-tête

    Paramètre

    Exemple

    Description

    Operation

    Remplacer

    Remplace la valeur d'un en-tête. Cette opération n'est pas autorisée si des en-têtes en double portant le même nom existent.

    Request Header

    En-tête de requête vers l'origine personnalisé

    Sélectionnez Custom Back-to-origin Request Headers ou un en-tête de requête prédéfini.

    Header Name

    x-code

    Spécifie x-code comme nom d'en-tête de requête personnalisé.

    Find

    key

    Une expression régulière pour trouver la valeur à remplacer.

    Replace With

    abc

    La valeur de remplacement.

    Match

    Tout faire correspondre

    • Match All : Remplace toutes les valeurs correspondantes. Par exemple, pour l'en-tête x-code:key1,key2,key3, si vous utilisez une expression régulière pour faire correspondre « key » et le remplacer par « abc », le résultat est x-code:abc1,abc2,abc3.

    • Match the First Only : Remplace uniquement la première valeur correspondante. Par exemple, pour l'en-tête x-code:key1,key2,key3, si vous utilisez une expression régulière pour faire correspondre « key » et le remplacer par « abc », le résultat est x-code:abc1,key2,key3.

    Rule Condition

    Ne pas utiliser

    Une condition de règle identifie diverses informations de paramètres dans une requête utilisateur. Cela détermine si une configuration prend effet pour cette requête.

    • Ne pas utiliser : N'utilise pas de condition de règle.

    • Pour ajouter ou modifier des conditions de règle, gérez-les dans le moteur de règles.

  8. Cliquez sur OK.