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. Pour réécrire les en-têtes HTTP dans les requêtes vers l'origine, modifiez les en-têtes de requête sortants. 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 à vos besoins métier.
Prérequis
Cette fonctionnalité n'est pas activée par défaut. Pour l'utiliser avec un domaine, soumettez un ticket afin de l'activer.
Contexte
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.
Remarques sur l'utilisation
Une requête sortante est un message HTTP envoyé de CDNDCDN vers un serveur d'origine. La modification de la configuration des en-têtes de requête sortants affecte uniquement les messages HTTP envoyés de CDNDCDN vers 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 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 auquel accède 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
Procédure
Connectez-vous à la console DCDN.
Dans le volet de navigation de gauche, cliquez sur Domain Names.
Sur la page Domain Names, localisez le domaine que vous souhaitez gérer et cliquez sur Configure dans la colonne Actions.
Dans le volet de navigation du domaine, cliquez sur Origin Fetch.
Cliquez sur l'onglet Modify Outgoing Request Header.
Sur l'onglet Modify Outgoing Request Header, cliquez sur Add.
-
Configurez les paramètres de modification de l'en-tête.
ImportantSi plusieurs opérations conflictuelles ciblent le même en-tête de requête vers l'origine, seule celle ayant la priorité la plus élevée est exécutée. L'ordre de priorité, du plus élevé au plus faible, est le suivant : . Par exemple, si vous configurez à la fois une opération Add et une opération Delete pour le même en-tête, seule l'opération Add est exécutée.
Cliquez sur OK.