Lorsqu'une requête utilisateur atteint votre serveur d'origine via DCDN, vous pouvez modifier les en-têtes de réponse HTTP envoyés par ce dernier. Cette fonctionnalité vous permet d'ajouter des capacités spécifiques ou de garantir que les réponses respectent des règles personnalisées, telles que des politiques de mise en cache, des types MIME ou des durées d'expiration.
Prérequis
Cette fonctionnalité n'est pas activée par défaut. Pour l'utiliser avec un nom de domaine, vous devez soumettre un ticket afin de l'activer.
Contexte
Un en-tête de réponse HTTP (Hypertext Transfer Protocol) est un composant de l'en-tête d'une réponse HTTP. En modifiant les en-têtes de réponse entrants, vous pouvez ajouter des fonctionnalités spécifiques à la réponse. Un en-tête de réponse se compose d'un nom, d'un deux-points (:) et d'une valeur. Par exemple : Cache-Control: no-cache.
HTTP utilise un modèle requête-réponse. Lorsqu'un utilisateur envoie une requête, celle-ci est acheminée via DCDN vers le serveur d'origine. Le serveur d'origine renvoie ensuite une réponse. Vous pouvez modifier les en-têtes de cette réponse pour implémenter une logique personnalisée. Le schéma suivant illustre ce processus.
Alibaba Cloud met à disposition les paramètres d'en-tête de réponse suivants pour implémenter les fonctionnalités décrites dans le tableau ci-dessous.
|
En-tête de réponse |
Description |
Exemple |
|
Cache-Control |
Contrôle la manière dont les clients et les points de présence (POP) DCDN mettent l'objet en cache. Par exemple, la directive max-age définit la durée de mise en cache en secondes. |
|
|
Content-Type |
Spécifie le type MIME du corps de la réponse. |
|
|
Expires |
Indique la date et l'heure après lesquelles la réponse est considérée comme expirée. |
|
|
Last-Modified |
Indique la date et l'heure de la dernière modification de l'objet demandé. |
|
|
Custom Response Header |
Si les en-têtes standard ne répondent pas à vos besoins, sélectionnez Custom Response Header pour définir des noms et des valeurs d'en-tête personnalisés. |
Exemples : |
Une requête d'extraction depuis l'origine (origin-pull) est un message HTTP envoyé par un point de présence (POP) DCDN à un serveur d'origine pour un domaine accéléré spécifique.
Les règles actives s'appliquent à toutes les réponses relatives aux ressources du domaine. Ces règles affectent uniquement les réponses du serveur d'origine vers les POP DCDN, et non les réponses d'un POP vers un utilisateur.
Les noms de domaine génériques (avec caractères joker) ne sont pas pris en charge.
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 nom de domaine à 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 Incoming Response Header.
Sous l'onglet Modify Incoming Response Header, cliquez sur Add.
-
Configurez la règle d'en-tête de réponse entrante.
Vous pouvez ajouter, remplacer, modifier ou supprimer des en-têtes HTTP. Cela s'applique aux en-têtes par défaut, aux en-têtes précédemment ajoutés ou aux en-têtes qui ne sont plus nécessaires.
RemarqueSi vous configurez plusieurs opérations pour le même en-tête de réponse, elles sont exécutées selon l'ordre de priorité suivant : . Par exemple, si vous configurez à la fois une opération Add et une opération Delete pour le même en-tête, l'en-tête est d'abord ajouté, puis supprimé.
Si vous utilisez cette fonctionnalité au sein du moteur de règles, la priorité de la règle détermine l'ordre d'exécution, et non la priorité des opérations décrite dans cette rubrique.
-
Ajouter un en-tête de réponse
Paramètre
Exemple
Description
Opération
Add
Ajoute l'en-tête spécifié à la réponse du serveur d'origine.
Paramètre d'en-tête de réponse
Custom Response Header
Vous pouvez sélectionner un paramètre d'en-tête prédéfini dans la liste déroulante, ou choisir Custom Response Header pour configurer un paramètre d'en-tête personnalisé.
Nom d'en-tête personnalisé
x-code
Définit le nom d'en-tête personnalisé sur x-code.
Valeur d'en-tête
key1
Vous pouvez spécifier plusieurs valeurs pour un seul en-tête. Séparez les valeurs par des virgules (,).
key1,key2
Autoriser les doublons
Oui
Lorsque Allow Duplicates est défini sur Allow, vous pouvez attribuer différentes valeurs au paramètre d'en-tête de réponse. Par exemple :
x-code:key1,x-code:key2.Non
Lorsque Allow Duplicates est défini sur Do not allow, le paramètre d'en-tête de réponse ne peut avoir qu'une seule valeur unique. Une nouvelle valeur écrase la précédente. Par exemple, si vous ajoutez d'abord
x-code:key1puisx-code:key2, la valeur finale serax-code:key2. -
Remplacer un en-tête de réponse
Paramètre
Exemple
Description
Opération
Replace
L'opération Replace n'est autorisée que pour les en-têtes apparaissant une seule fois. Cette opération n'est pas permise si l'en-tête spécifié est dupliqué.
Paramètre d'en-tête de réponse
Custom Response Header
Vous pouvez sélectionner un paramètre d'en-tête prédéfini dans la liste déroulante, ou choisir Custom Response Header pour remplacer un paramètre d'en-tête personnalisé.
Nom d'en-tête personnalisé
x-code
Définit le nom d'en-tête personnalisé sur x-code.
Rechercher
key
Expression régulière permettant de trouver le contenu à remplacer dans la valeur de l'en-tête.
Remplacer par
abc
Valeur de remplacement pour le contenu correspondant.
Correspondance
Match All
Lorsque l'option Match est définie sur Match All, toutes les valeurs correspondantes sont remplacées. Par exemple, si vous remplacez la valeur
keytrouvée par une expression régulière parabcdansx-code:key1,key2,key3, le résultat estx-code:abc1,abc2,abc3.Match the First Only
Lorsque l'option Match est définie sur Match only the first, seule la première valeur correspondante est remplacée. Par exemple, si vous remplacez la valeur correspondante « key » par « abc » dans
x-code:key1,key2,key3, le résultat estx-code:abc1,key2,key3. -
Modifier un en-tête de réponse

Paramètre
Exemple
Description
Opération
Modify
L'opération Modify n'est autorisée que pour les en-têtes apparaissant une seule fois. Cette opération n'est pas permise si l'en-tête spécifié est dupliqué.
Paramètre d'en-tête de réponse
Custom Response Header
Vous pouvez sélectionner un paramètre d'en-tête prédéfini dans la liste déroulante, ou choisir Custom Response Header pour modifier un paramètre d'en-tête personnalisé.
Nom d'en-tête personnalisé
x-code
Définit le nom d'en-tête personnalisé sur x-code.
Modifier en
key1,key3
Nouvelle valeur de l'en-tête. Vous pouvez spécifier plusieurs valeurs, séparées par des virgules (,).
-
Supprimer un en-tête de réponse
Paramètre
Exemple
Description
Opération
Delete
Supprime toutes les instances de l'en-tête spécifié, qu'il existe ou non des doublons.
Paramètre d'en-tête de réponse
Custom Response Header
Vous pouvez sélectionner un paramètre d'en-tête prédéfini dans la liste déroulante, ou choisir Custom Response Header pour supprimer un paramètre d'en-tête personnalisé.
Nom d'en-tête personnalisé
x-code
Définit le nom d'en-tête personnalisé sur x-code.
Cliquez sur OK.