Lorsqu'une requête utilisateur atteint votre serveur d'origine via DCDN, vous pouvez modifier les en-têtes de réponse HTTP renvoyés par ce serveur. Cette fonctionnalité permet d'ajouter des capacités spécifiques ou de garantir la conformité des réponses à des règles personnalisées (politiques de mise en cache, types MIME, délais d'expiration, etc.).
Prérequis
Cette fonctionnalité est désactivée par défaut. Pour l'utiliser sur un nom de domaine, envoyez une demande 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. Modifier les en-têtes de réponse entrants permet d'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. Exemple : Cache-Control: no-cache.
Le protocole HTTP repose sur un modèle requête-réponse. Lorsqu'un utilisateur émet une requête, celle-ci transite par DCDN jusqu'au serveur d'origine, qui renvoie ensuite une réponse. Vous pouvez modifier les en-têtes de cette réponse pour appliquer une logique personnalisée. La figure suivante illustre ce processus.
Alibaba Cloud fournit les paramètres d'en-tête de réponse suivants pour mettre en œuvre les fonctionnalités décrites dans le tableau ci-après.
|
En-tête de réponse |
Description |
Exemple |
|
Cache-Control |
Contrôle la mise en cache de l'objet par les clients et les points de présence (POP) DCDN. 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 |
Définit la date et l'heure d'expiration de la réponse. |
|
|
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 standards 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 est un message HTTP envoyé par un point de présence (POP) DCDN à un serveur d'origine pour un nom de domaine accéléré spécifique.
Les règles actives s'appliquent à toutes les réponses concernant les ressources associées au domaine. Elles affectent uniquement les transmissions du serveur d'origine vers les POP DCDN, et non les réponses envoyées d'un POP vers un utilisateur.
Les noms de domaine génériques 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, repérez le nom de domaine à gérer, puis 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.
Dans l'onglet Modify Incoming Response Header, cliquez sur Add.
-
Configurez la règle d'en-tête de réponse entrant.
Vous pouvez ajouter, remplacer, modifier ou supprimer des en-têtes HTTP (en-têtes par défaut, en-têtes ajoutés précédemment ou en-têtes inutiles).
RemarqueSi plusieurs opérations concernent le même en-tête de réponse, elles s'exécutent selon l'ordre de priorité suivant : . Ainsi, si vous configurez simultanément une opération Add et une opération Delete pour le même en-tête, celui-ci est d'abord ajouté puis supprimé.
Si vous utilisez cette fonctionnalité dans le 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
Operation
Add
Ajoute l'en-tête spécifié à la réponse provenant du serveur d'origine.
Response Header Parameter
Custom Response Header
Sélectionnez un paramètre d'en-tête prédéfini dans la liste déroulante ou choisissez Custom Response Header pour configurer un paramètre d'en-tête personnalisé.
Custom Header Name
x-code
Définit x-code comme nom d'en-tête personnalisé.
Header Value
key1
Vous pouvez attribuer plusieurs valeurs à un même en-tête. Séparez-les par des virgules (,).
key1,key2
Allow Duplicates
Yes
Si Allow Duplicates est défini sur Allow, vous pouvez attribuer différentes valeurs au paramètre d'en-tête de réponse. Exemple :
x-code:key1,x-code:key2.No
Si Allow Duplicates est défini sur Do not allow, le paramètre d'en-tête de réponse n'accepte qu'une valeur unique. Toute nouvelle valeur écrase la précédente. Par exemple, si vous ajoutez d'abord
x-code:key1puisx-code:key2, la valeur finale estx-code:key2. -
Remplacer un en-tête de réponse

Paramètre
Exemple
Description
Operation
Replace
L'opération Replace n'est autorisée que pour les en-têtes apparaissant une seule fois. Elle est interdite si l'en-tête spécifié existe en plusieurs exemplaires.
Response Header Parameter
Custom Response Header
Choisissez un paramètre d'en-tête prédéfini dans la liste déroulante ou sélectionnez Custom Response Header pour remplacer un paramètre d'en-tête personnalisé.
Custom Header Name
x-code
Définit x-code comme nom d'en-tête personnalisé.
Find
key
Expression régulière permettant de localiser le contenu à remplacer dans la valeur de l'en-tête.
Replace With
abc
Valeur de remplacement pour le contenu correspondant.
Match
Match All
Lorsque l'option Match est réglée sur Match All, toutes les occurrences correspondantes sont remplacées. Par exemple, si vous remplacez la valeur
keyidentifiée par l'expression régulière parabcdansx-code:key1,key2,key3, le résultat obtenu estx-code:abc1,abc2,abc3.Match the First Only
Si l'option Match est réglée sur Match only the first, seule la première occurrence correspondante est remplacée. Ainsi, en remplaçant 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
Operation
Modify
L'opération Modify s'applique exclusivement aux en-têtes uniques. Elle n'est pas autorisée si l'en-tête cible apparaît en double.
Response Header Parameter
Custom Response Header
Choisissez un paramètre d'en-tête prédéfini dans la liste déroulante ou sélectionnez Custom Response Header pour modifier un paramètre d'en-tête personnalisé.
Custom Header Name
x-code
Définit x-code comme nom d'en-tête personnalisé.
Modify To
key1,key3
Nouvelle valeur à attribuer à 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
Operation
Delete
Supprime toutes les instances de l'en-tête spécifié, y compris les doublons éventuels.
Response Header Parameter
Custom Response Header
Sélectionnez un paramètre d'en-tête prédéfini dans la liste déroulante ou choisissez Custom Response Header pour supprimer un paramètre d'en-tête personnalisé.
Custom Header Name
x-code
Définit x-code comme nom d'en-tête personnalisé.
Cliquez sur OK.