

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Comprendre les politiques d’en-têtes de réponses
<a name="understanding-response-headers-policies"></a>

Vous pouvez utiliser une politique d'en-têtes de réponse pour spécifier les en-têtes HTTP qu'Amazon CloudFront supprime ou ajoute dans les réponses qu'il envoie aux utilisateurs. Pour plus d’informations sur les politiques d’en-têtes de réponses et sur les raisons de leur utilisation, consultez la section [Ajouter ou supprimer des en-têtes HTTP dans les CloudFront réponses avec une politique](modifying-response-headers.md).

Les rubriques suivantes expliquent les paramètres dans une politique d’en-têtes de réponses. Les paramètres sont regroupés en catégories, qui sont représentées dans les rubriques suivantes.

**Topics**
+ [Détails de la politique (métadonnées)](#understanding-response-headers-policies-details)
+ [en-têtes CORS](#understanding-response-headers-policies-cors)
+ [En-têtes de sécurité](#understanding-response-headers-policies-security)
+ [En-têtes personnalisés](#understanding-response-headers-policies-custom)
+ [Suppression d’en-têtes](#understanding-response-headers-policies-remove-headers)
+ [En-tête Server-Timing](#server-timing-header)

## Détails de la politique (métadonnées)
<a name="understanding-response-headers-policies-details"></a>

Les paramètres des détails de la politique contiennent des métadonnées sur une politique d'en-têtes de réponses.
+ **Name (Nom)** : nom permettant d'identifier la politique d’en-têtes de réponses. Dans la console, utilisez le nom pour attacher la politique à un comportement de cache.
+ **Description** (facultative) : commentaire permettant de décrire la politique d’en-têtes de réponses. Cette option est facultative, mais elle peut vous aider à identifier l'objectif de la politique.

## en-têtes CORS
<a name="understanding-response-headers-policies-cors"></a>

Les paramètres de partage des ressources cross-origin (CORS) permettent d'ajouter et de configurer des en-têtes CORS dans une politique d'en-têtes de réponses.

Cette liste explique comment spécifier des paramètres et des valeurs valides dans une politique d’en-têtes de réponse. Pour plus d'informations sur chacun de ces en-têtes et sur leur mode d’utilisation pour les demandes et réponses CORS réelles, consultez la section [partage des ressources cross-origin](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS) dans MDN Web Docs et dans les [spécifications de protocole CORS](https://fetch.spec.whatwg.org/#http-cors-protocol).

**Access-Control-Allow-Credentials**  
Il s'agit d'un paramètre booléen (`true`ou`false`) qui détermine si l'`Access-Control-Allow-Credentials`en-tête est CloudFront ajouté dans les réponses aux requêtes CORS. Lorsque ce paramètre est défini sur`true`, CloudFront ajoute l'`Access-Control-Allow-Credentials: true`en-tête dans les réponses aux demandes CORS. Sinon, CloudFront n'ajoute pas cet en-tête aux réponses.

**Access-Control-Allow-Headers**  
Spécifie les noms d'en-tête qui sont CloudFront utilisés comme valeurs pour l'`Access-Control-Allow-Headers`en-tête dans les réponses aux demandes de pré-vol CORS. Les valeurs valides pour ce paramètre incluent les noms d'en-têtes HTTP ou le caractère générique (`*`), qui indique que tous les en-têtes sont admis.   
L’en-tête `Authorization` ne peut pas utiliser de caractère générique et doit être répertorié explicitement.
    
**Exemples d’utilisation valide du caractère générique**    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/AmazonCloudFront/latest/DeveloperGuide/understanding-response-headers-policies.html)

**Access-Control-Allow-Methods**  
Spécifie les méthodes HTTP qui sont CloudFront utilisées comme valeurs pour l'`Access-Control-Allow-Methods`en-tête dans les réponses aux requêtes CORS de pré-vol. Les valeurs valides sont `GET`, `DELETE`, `HEAD`, `OPTIONS`, `PATCH`, `POST`, `PUT` et `ALL`. `ALL` est une valeur spéciale qui inclut toutes les méthodes HTTP répertoriées.

**Access-Control-Allow-Origin**  
Spécifie les valeurs qui CloudFront peuvent être utilisées dans l'en-tête de `Access-Control-Allow-Origin` réponse. Les valeurs valides pour ce paramètre incluent une origine spécifique (telle que `http://www.example.com`) ou le caractère générique (`*`), ce qui indique que toutes les origines sont autorisées.   
**Remarques**  
+ Le caractère générique (`*`) est autorisé à l’extrémité gauche du sous-domaine (`*.example.org`). 
+ Le caractère générique (`*`) *n’est pas* autorisé aux positions suivantes :
  + Domaines de premier niveau (`example.*`)
  + À droite des sous-domaines (`test.*.example.org`) ou au sein de n’importe quel sous-domaine (`*test.example.org`)
  + À l'intérieur des termes (`exa*mple.org)`
Pour obtenir des exemples d’utilisation du caractère générique, consultez le tableau suivant.      
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/AmazonCloudFront/latest/DeveloperGuide/understanding-response-headers-policies.html)

**Access-Control-Expose-Headers**  
Spécifie les noms d'en-tête CloudFront utilisés comme valeurs pour l'`Access-Control-Expose-Headers`en-tête dans les réponses aux demandes CORS. Les valeurs valides pour ce paramètre incluent les noms d'en-têtes HTTP ou le caractère générique (`*`).

**Access-Control-Max-Age**  
Un nombre de secondes, CloudFront utilisé comme valeur de l'`Access-Control-Max-Age`en-tête dans les réponses aux demandes de pré-vol CORS.

**Origin override (Remplacement de l’origine)**  
Paramètre booléen qui détermine le CloudFront comportement lorsque la réponse provenant de l'origine contient l'un des en-têtes CORS figurant également dans la politique.  
+ Lorsqu'elle est définie sur `true` et que la réponse d'origine contient un en-tête CORS qui figure également dans la politique, CloudFront ajoute l'en-tête CORS de la politique à la réponse. CloudFront envoie ensuite cette réponse au spectateur. CloudFront ignore l'en-tête qu'il a reçu de l'origine.
+ Lorsqu'elle est définie sur `false` et que la réponse d'origine contient un en-tête CORS (que l'en-tête CORS figure ou non dans la politique), elle CloudFront inclut l'en-tête CORS qu'elle a reçu de l'origine à la réponse. CloudFront n'ajoute aucun en-tête CORS dans la politique à la réponse envoyée au lecteur.

## En-têtes de sécurité
<a name="understanding-response-headers-policies-security"></a>

Vous pouvez utiliser les paramètres des en-têtes de sécurité pour ajouter et configurer plusieurs en-têtes de réponse HTTP liés à la sécurité dans une politique d'en-têtes de réponse.

Cette liste explique comment vous pouvez spécifier le paramètre et les valeurs valides dans une politique d'en-têtes de réponse. Pour plus d'informations sur chacun de ces en-têtes et sur leur mode d’utilisation dans les réponses HTTP réelles, consultez les liens d’accès à MDN Web Docs.

**Content-Security-Policy**  
Spécifie les directives de politique de sécurité du contenu qui sont CloudFront utilisées comme valeurs pour l'en-tête de `Content-Security-Policy` réponse.  
Pour plus d'informations sur cet en-tête et sur les directives valides de la politique, consultez la section [https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy) dans MDN Web Docs.  
La valeur d’en-tête `Content-Security-Policy` est limitée à 1 783 caractères.

**Referrer-Policy**  
Spécifie la directive de politique de référence CloudFront utilisée comme valeur pour l'en-tête de `Referrer-Policy` réponse. Les valeurs valides pour ce paramètre sont `no-referrer`, `no-referrer-when-downgrade`, `origin`, `origin-when-cross-origin`, `same-origin`, `strict-origin`, `strict-origin-when-cross-origin` et `unsafe-url`.  
Pour plus d’informations sur cet en-tête et ces directives, consultez la section [https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referrer-Policy](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referrer-Policy) dans MDN web Docs.

**Strict-Transport-Security**  
Spécifie les directives et les paramètres CloudFront utilisés comme valeur pour l'en-tête de `Strict-Transport-Security` réponse. Pour ce paramètre, spécifiez séparément :  
+ Un nombre de secondes, qui est CloudFront utilisé comme valeur pour la `max-age` directive de cet en-tête
+ Un paramètre booléen (`true`ou`false`) pour`preload`, qui détermine si la `preload` directive est CloudFront incluse dans la valeur de cet en-tête
+ Un paramètre booléen (`true`ou`false`) pour`includeSubDomains`, qui détermine si la `includeSubDomains` directive est CloudFront incluse dans la valeur de cet en-tête
Pour plus d’informations sur cet en-tête et ces directives, consultez la section [https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Strict-Transport-Security](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Strict-Transport-Security) dans MDN web Docs.

**X-Content-Type-Options**  
Il s'agit d'un paramètre booléen (`true`ou`false`) qui détermine si l'`X-Content-Type-Options`en-tête est CloudFront ajouté aux réponses. Lorsque ce paramètre est défini`true`, CloudFront ajoute l'`X-Content-Type-Options: nosniff`en-tête aux réponses. Sinon, cet en-tête CloudFront n'est pas ajouté.  
Pour plus d’informations sur cet en-tête, consultez la section [https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Content-Type-Options](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Content-Type-Options) dans MDN Web Docs.

**X-Frame-Options**  
Spécifie la directive CloudFront à utiliser comme valeur pour l'en-tête de `X-Frame-Options` réponse. Les valeurs valides pour ce paramètre sont `DENY` ou `SAMEORIGIN`.  
Pour plus d’informations sur cet en-tête et ces directives, consultez la section [https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Frame-Options](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Frame-Options) dans MDN web Docs.

**X-XSS-Protection**  
Spécifie les directives et les paramètres CloudFront utilisés comme valeur pour l'en-tête de `X-XSS-Protection` réponse. Pour ce paramètre, spécifiez séparément :  
+ Un paramètre `X-XSS-Protection` de `0` (désactive le filtrage XSS) ou `1` (active le filtrage XSS)
+ Un paramètre booléen (`true`ou`false`) pour`block`, qui détermine si la `mode=block` directive est CloudFront incluse dans la valeur de cet en-tête
+ Un URI de rapport, qui détermine si CloudFront la `report=reporting URI` directive est incluse dans la valeur de cet en-tête
Vous pouvez spécifier `true` pour `block`, ou une URI de génération de rapports, mais pas les deux conjointement. Pour plus d’informations sur cet en-tête et ces directives, consultez la section [https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-XSS-Protection](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-XSS-Protection) dans MDN web Docs.

**Origin override (Remplacement de l’origine)**  
Chacun de ces paramètres d'en-tête de sécurité contient un paramètre booléen (`true`ou`false`) qui détermine le CloudFront comportement lorsque la réponse de l'origine contient cet en-tête.  
Lorsque ce paramètre est défini sur `true` et que la réponse d'origine contient l'en-tête, CloudFront ajoute l'en-tête de la politique à la réponse envoyée au lecteur. Il ignore l'en-tête qu'il a reçu de l'origine.  
Lorsque ce paramètre est défini sur `false` et que la réponse d'origine contient l'en-tête, CloudFront inclut l'en-tête reçu de l'origine dans la réponse qu'elle envoie au spectateur.  
Lorsque la réponse d'origine ne contient pas d'en-tête, CloudFront ajoute l'en-tête dans la politique à la réponse envoyée au spectateur. CloudFront effectue cette opération lorsque ce paramètre est défini sur `true` ou`false`.

## En-têtes personnalisés
<a name="understanding-response-headers-policies-custom"></a>

Vous pouvez utiliser les paramètres d'en-têtes personnalisés pour ajouter et configurer des en-têtes HTTP personnalisés dans une politique d'en-têtes de réponse. CloudFront ajoute ces en-têtes à chaque réponse renvoyée aux spectateurs. Pour chaque en-tête personnalisé, spécifiez également la valeur de l'en-tête, bien que la spécification d'une valeur soit facultative. Cela est dû au fait qu'il est CloudFront possible d'ajouter un en-tête de réponse sans valeur.

Chaque en-tête personnalisé possède également son propre paramètre **Origin override (Remplacement de l’origine)** :
+ Lorsque ce paramètre est défini sur `true` et que la réponse d'origine contient l'en-tête personnalisé figurant dans la politique, CloudFront ajoute l'en-tête personnalisé de la politique à la réponse qu'elle envoie au lecteur. Il ignore l'en-tête qu'il a reçu de l'origine.
+ Lorsque ce paramètre est `false` activé et que la réponse d'origine contient l'en-tête personnalisé figurant dans la politique, CloudFront inclut l'en-tête personnalisé reçu de l'origine dans la réponse qu'elle envoie au lecteur.
+ Lorsque la réponse d'origine ne contient pas l'en-tête personnalisé figurant dans la politique, CloudFront ajoute l'en-tête personnalisé de la politique à la réponse envoyée au lecteur. CloudFront effectue cette opération lorsque ce paramètre est défini sur `true` ou`false`.

## Suppression d’en-têtes
<a name="understanding-response-headers-policies-remove-headers"></a>

Vous pouvez spécifier les en-têtes que vous CloudFront souhaitez supprimer des réponses qu'il reçoit depuis l'origine afin qu'ils ne soient pas inclus dans les réponses CloudFront envoyées aux spectateurs. CloudFront supprime les en-têtes de chaque réponse envoyée aux spectateurs, que les objets soient servis depuis le CloudFront cache ou depuis l'origine. Par exemple, vous pouvez supprimer des en-têtes inutiles pour les navigateurs, tels que `X-Powered-By` ou`Vary`, afin de CloudFront supprimer ces en-têtes des réponses envoyées aux utilisateurs.

Lorsque vous spécifiez des en-têtes à supprimer à l'aide d'une politique d'en-têtes de réponse, CloudFront supprimez d'abord les en-têtes, puis ajoutez tous les en-têtes spécifiés dans d'autres sections de la politique d'en-têtes de réponse (en-têtes CORS, en-têtes de sécurité, en-têtes personnalisés, etc.). Si vous spécifiez un en-tête à supprimer mais que vous ajoutez également le même en-tête dans une autre section de la politique, CloudFront incluez l'en-tête dans les réponses envoyées aux spectateurs.

**Note**  
Vous pouvez utiliser une politique d'en-têtes de réponse pour supprimer `Date` les en-têtes `Server` et CloudFront reçus de l'origine, afin que ces en-têtes (tels qu'ils proviennent de l'origine) ne soient pas inclus dans les réponses CloudFront envoyées aux spectateurs. Toutefois, si vous le faites, CloudFront ajoute sa propre version de ces en-têtes aux réponses qu'il envoie aux spectateurs. Pour l'`Server`en-tête qui CloudFront ajoute, la valeur de l'en-tête est`CloudFront`.

### En-têtes que vous ne pouvez pas supprimer
<a name="remove-headers-disallowed"></a>

Vous ne pouvez pas supprimer les en-têtes suivants à l'aide d'une politique d'en-têtes de réponse. Si vous spécifiez ces en-têtes dans la section **Remove headers** (Supprimer les en-têtes) d'une politique d'en-têtes de réponse (`ResponseHeadersPolicyRemoveHeadersConfig` dans l'API), vous recevez un message d'erreur.
+ `Connection`
+ `Content-Encoding`
+ `Content-Length`
+ `Expect`
+ `Host`
+ `Keep-Alive`
+ `Proxy-Authenticate`
+ `Proxy-Authorization`
+ `Proxy-Connection`
+ `Trailer`
+ `Transfer-Encoding`
+ `Upgrade`
+ `Via`
+ `Warning`
+ `X-Accel-Buffering`
+ `X-Accel-Charset`
+ `X-Accel-Limit-Rate`
+ `X-Accel-Redirect`
+ `X-Amz-Cf-.*`
+ `X-Amzn-Auth`
+ `X-Amzn-Cf-Billing`
+ `X-Amzn-Cf-Id`
+ `X-Amzn-Cf-Xff`
+ `X-Amzn-ErrorType`
+ `X-Amzn-Fle-Profile`
+ `X-Amzn-Header-Count`
+ `X-Amzn-Header-Order`
+ `X-Amzn-Lambda-Integration-Tag`
+ `X-Amzn-RequestId`
+ `X-Cache`
+ `X-Edge-.*`
+ `X-Forwarded-Proto`
+ `X-Real-Ip`

## En-tête Server-Timing
<a name="server-timing-header"></a>

Utilisez le paramètre `Server-Timing` d'en-tête pour activer l'`Server-Timing`en-tête dans les réponses HTTP envoyées depuis CloudFront. Vous pouvez utiliser cet en-tête pour consulter les statistiques qui peuvent vous aider à mieux comprendre le comportement, les performances CloudFront et votre origine. Par exemple, vous pouvez voir quelle couche de cache a reçu un accès au cache. Vous pouvez également voir la latence du premier octet à partir de l'origine en cas d’échec d'accès au cache Les indicateurs figurant dans l'`Server-Timing`en-tête peuvent vous aider à résoudre les problèmes ou à tester l'efficacité de votre configuration CloudFront ou de votre configuration d'origine.

Pour plus d'informations sur l'utilisation de l'`Server-Timing`en-tête avec CloudFront, consultez les rubriques suivantes.

Pour activer l’en-tête `Server-Timing`, [créez (ou modifiez) une politique d’en-têtes de réponse](creating-response-headers-policies.md).

**Topics**
+ [Taux d'échantillonnage et en-tête de requête Pragma](#server-timing-header-sampling-rate)
+ [En-tête Server-Timing d'origine](#server-timing-header-origin)
+ [Métriques d’en-tête Server-Timing](#server-timing-header-metrics)
+ [Exemples d'en-têtes Server-Timing](#server-timing-header-examples)

### Taux d'échantillonnage et en-tête de requête Pragma
<a name="server-timing-header-sampling-rate"></a>

Lorsque vous activez l’en-tête `Server-Timing` dans une politique d’en-têtes de réponse, spécifiez également le *taux d’échantillonnage*. Le taux d'échantillonnage est un nombre compris entre 0 et 100 (inclus) qui indique le pourcentage de réponses auxquelles vous CloudFront souhaitez ajouter l'`Server-Timing`en-tête. Lorsque vous définissez le taux d'échantillonnage sur 100, CloudFront ajoute l'`Server-Timing`en-tête à la réponse HTTP pour chaque demande correspondant au comportement du cache auquel la politique des en-têtes de réponse est attachée. Lorsque vous le définissez sur 50, il CloudFront ajoute l'en-tête à 50 % des réponses pour les demandes qui correspondent au comportement du cache. Vous pouvez définir le taux d'échantillonnage sur n'importe quelle valeur comprise entre 0 et 100, avec quatre décimales au maximum.

Lorsque le taux d'échantillonnage est défini sur un nombre inférieur à 100, vous ne pouvez pas contrôler les réponses auxquelles l'`Server-Timing`en-tête est CloudFront ajouté, mais uniquement le pourcentage. Toutefois, vous pouvez ajouter l’en-tête `Pragma` avec une valeur définie sur `server-timing` dans une demande HTTP pour recevoir l’en-tête `Server-Timing` dans la réponse à cette demande. Cela fonctionne quel que soit le taux d'échantillonnage défini. Même lorsque le taux d'échantillonnage est défini sur zéro (0), CloudFront ajoute l'`Server-Timing`en-tête à la réponse si la demande contient l'`Pragma: server-timing`en-tête.

### En-tête Server-Timing d'origine
<a name="server-timing-header-origin"></a>

En cas d'échec du cache et que CloudFront la demande est transmise à l'origine, l'origine peut inclure un `Server-Timing` en-tête dans sa réponse à CloudFront. Dans ce cas, CloudFront ajoute ses [métriques](#server-timing-header-metrics) à l'`Server-Timing`en-tête qu'il a reçu de l'origine. La réponse CloudFront envoyée au spectateur contient un seul `Server-Timing` en-tête qui inclut la valeur provenant de l'origine et les métriques CloudFront ajoutées. La valeur d'en-tête provenant de l'origine peut se trouver à la fin ou entre deux ensembles de mesures qui s' CloudFront ajoutent à l'en-tête.

En cas d'accès au cache, la réponse envoyée au CloudFront visualiseur contient un seul `Server-Timing` en-tête qui inclut uniquement les CloudFront métriques contenues dans la valeur d'en-tête (la valeur de l'origine n'est pas incluse).

### Métriques d’en-tête Server-Timing
<a name="server-timing-header-metrics"></a>

Lorsque CloudFront vous ajoutez l'`Server-Timing`en-tête à une réponse HTTP, la valeur de l'en-tête contient une ou plusieurs mesures qui peuvent vous aider à mieux comprendre le comportement, les performances CloudFront et votre origine. La liste suivante contient toutes les métriques et leurs valeurs potentielles. Un `Server-Timing` en-tête ne contient que certaines de ces métriques, en fonction de la nature de la demande et de la réponse CloudFront.

Certaines de ces métriques sont incluses dans l’en-tête `Server-Timing` avec un nom uniquement (sans valeur). D'autres sont composées d’un nom et d’une valeur. Lorsqu'une métrique a une valeur, le nom et la valeur sont séparés par un point-virgule (`;`). Lorsque l'en-tête contient plusieurs métriques, celles-ci sont séparées par une virgule (`,`).

**cdn-cache-hit**  
CloudFront a fourni une réponse depuis le cache sans faire de demande à l'origine.

**cdn-cache-refresh**  
CloudFront a fourni une réponse depuis le cache après avoir envoyé une demande à l'origine pour vérifier que l'objet mis en cache est toujours valide. Dans ce cas, l'objet CloudFront n'a pas été récupéré dans son intégralité depuis l'origine.

**cdn-cache-miss**  
CloudFront n'a pas fourni de réponse depuis le cache. Dans ce cas, j' CloudFrontai demandé l'objet complet à l'origine avant de renvoyer la réponse.

**cdn-pop**  
Contient une valeur qui décrit le CloudFront point de présence (POP) qui a traité la demande.

**cdn-rid**  
Contient une valeur avec l'identifiant CloudFront unique de la demande. Vous pouvez utiliser cet identifiant de demande (RID) lors du dépannage de problèmes liés à Support.

**cdn-hit-layer**  
Cette métrique est présente lorsqu'elle CloudFront fournit une réponse depuis le cache sans faire de demande à l'origine. Contient l'une des valeurs suivantes :  
+ **EDGE** — CloudFront a fourni la réponse mise en cache à partir d'un emplacement POP.
+ **REC** — CloudFront a fourni la réponse mise en cache à partir d'un emplacement de [cache périphérique régional](HowCloudFrontWorks.md#CloudFrontRegionaledgecaches) (REC).
+ **Origin Shield** : CloudFront a fourni la réponse mise en cache depuis le REC agissant en tant qu'[Origin Shield](origin-shield.md).

**cdn-upstream-layer**  
Lorsque l'objet complet est CloudFront demandé depuis l'origine, cette métrique est présente et contient l'une des valeurs suivantes :  
+ **EDGE** : un emplacement POP a envoyé la demande directement à l'origine.
+ **REC** : un emplacement REC a envoyé la demande directement à l'origine.
+ **Origin Shield** : le REC qui agit en tant qu’[Origin Shield](origin-shield.md) a envoyé la demande directement à l'origine.

**cdn-upstream-dns**  
Contient une valeur indiquant le nombre de millisecondes passées à récupérer l'enregistrement DNS pour l'origine. La valeur zéro (0) indique que vous avez CloudFront utilisé un résultat DNS mis en cache ou réutilisé une connexion existante.

**cdn-upstream-connect**  
Contient une valeur indiquant le nombre de millisecondes entre le moment où la demande DNS d'origine est terminée et une connexion TCP (et TLS, le cas échéant) à l'origine. La valeur zéro (0) indique que vous avez CloudFront réutilisé une connexion existante.

**cdn-upstream-fbl**  
Contient une valeur indiquant le nombre de millisecondes entre le moment où la demande HTTP d’origine est terminée et le moment où le premier octet est reçu dans la réponse de l’origine (latence du premier octet).

**cdn-downstream-fbl**  
Contient une valeur indiquant le nombre de millisecondes entre le moment où l'emplacement périphérique a fini de recevoir la demande et celui où il a envoyé le premier octet de la réponse à l'utilisateur.

### Exemples d'en-têtes Server-Timing
<a name="server-timing-header-examples"></a>

Voici des exemples d'`Server-Timing`en-têtes qu'un utilisateur peut recevoir CloudFront lorsque le paramètre `Server-Timing` d'en-tête est activé.

**Example – échec d’accès au cache**  
L'exemple suivant montre un `Server-Timing` en-tête qu'un utilisateur peut recevoir lorsque l'objet demandé n'est pas dans le CloudFront cache.  

```
Server-Timing: cdn-upstream-layer;desc="EDGE",cdn-upstream-dns;dur=0,cdn-upstream-connect;dur=114,cdn-upstream-fbl;dur=177,cdn-cache-miss,cdn-pop;desc="PHX50-C2",cdn-rid;desc="yNPsyYn7skvTzwWkq3Wcc8Nj_foxUjQUe9H1ifslzWhb0w7aLbFvGg==",cdn-downstream-fbl;dur=436
```
Cet en-tête `Server-Timing` indique ce qui suit :  
+ La demande d'origine a été envoyée depuis un CloudFront point de présence (POP) (`cdn-upstream-layer;desc="EDGE"`).
+ CloudFront a utilisé un résultat DNS mis en cache pour l'origine (`cdn-upstream-dns;dur=0`).
+ Il a fallu 114 millisecondes CloudFront pour terminer la connexion TCP (et TLS, le cas échéant) à l'origine (). `cdn-upstream-connect;dur=114`
+ Il a fallu 177 millisecondes CloudFront pour recevoir le premier octet de la réponse depuis l'origine, après avoir terminé la requête (). `cdn-upstream-fbl;dur=177`
+ L'objet demandé n'était pas dans CloudFront le cache (`cdn-cache-miss`).
+ La demande a été reçue à l’emplacement périphérique identifié par le code `PHX50-C2`(`cdn-pop;desc="PHX50-C2"`).
+ L'identifiant CloudFront unique de cette demande était `yNPsyYn7skvTzwWkq3Wcc8Nj_foxUjQUe9H1ifslzWhb0w7aLbFvGg==` (`cdn-rid;desc="yNPsyYn7skvTzwWkq3Wcc8Nj_foxUjQUe9H1ifslzWhb0w7aLbFvGg=="`).
+ Il a fallu 436 millisecondes pour CloudFront envoyer le premier octet de la réponse au spectateur, après avoir reçu la demande du spectateur (). `cdn-downstream-fbl;dur=436`

**Example – accès au cache**  
L'exemple suivant montre un `Server-Timing` en-tête qu'un utilisateur peut recevoir lorsque l'objet demandé se trouve dans CloudFront le cache.  

```
Server-Timing: cdn-cache-hit,cdn-pop;desc="SEA19-C1",cdn-rid;desc="nQBz4aJU2kP9iC3KHEq7vFxfMozu-VYBwGzkW9diOpeVc7xsrLKj-g==",cdn-hit-layer;desc="REC",cdn-downstream-fbl;dur=137
```
Cet en-tête `Server-Timing` indique ce qui suit :  
+ L’objet demandé était dans le cache (`cdn-cache-hit`).
+ La demande a été reçue à l’emplacement périphérique identifié par le code `SEA19-C1`(`cdn-pop;desc="SEA19-C1"`).
+ L'identifiant CloudFront unique de cette demande était `nQBz4aJU2kP9iC3KHEq7vFxfMozu-VYBwGzkW9diOpeVc7xsrLKj-g==` (`cdn-rid;desc="nQBz4aJU2kP9iC3KHEq7vFxfMozu-VYBwGzkW9diOpeVc7xsrLKj-g=="`).
+ L’objet demandé a été mis en cache dans un emplacement REC (Regional Edge Cache) (`cdn-hit-layer;desc="REC"`).
+ Il a fallu 137 millisecondes pour CloudFront envoyer le premier octet de la réponse au spectateur, après avoir reçu la demande du spectateur (). `cdn-downstream-fbl;dur=137`