--- title: Referrer-Policy slug: Web/HTTP/Headers/Referrer-Policy tags: - HTTP - HTTP Header - Privacy - Reference - Referrer-Policy - Response - Response Header - Réponse - en-tête - referrer translation_of: Web/HTTP/Headers/Referrer-Policy ---
L'en-tête {{glossary("HTTP header")}} Referrer-Policy
contrôle la quantité d'informations sur le référent (referrer) (envoyées par l'en-tête {{HTTPHeader("Referer")}}) incluses dans la requête.
Type d'en-tête | {{Glossary("Response header")}} |
---|---|
{{Glossary("Forbidden header name")}} | non |
Le nom originel de l'en-tête, {{HTTPHeader("Referer")}}, est une faute de frappe du mot anglais "referrer". L'en-tête Referrer-Policy
ne comporte pas cette erreur.
Referrer-Policy: no-referrer Referrer-Policy: no-referrer-when-downgrade Referrer-Policy: origin Referrer-Policy: origin-when-cross-origin Referrer-Policy: same-origin Referrer-Policy: strict-origin Referrer-Policy: strict-origin-when-cross-origin Referrer-Policy: unsafe-url
no-referrer
no-referrer-when-downgrade
(default)strict-origin-when-cross-origin
(voir https://github.com/whatwg/fetch/pull/952), envisagez d'utiliser cette valeur (ou une autre encore plus stricte) si possible si vous définissez la valeur de Referrer-Policy.origin
https://example.com/page.html
enverra le référent https://example.com/
.origin-when-cross-origin
same-origin
strict-origin
strict-origin-when-cross-origin
unsafe-url
Cette valeur divulgera des informations potentiellement confidentielles de la part des URL de ressources HTTPS vers des origines non sécurisées. Considérez les conséquences de ce paramétrage avant de vous en servir.
Vous pouvez aussi définir des règles de référent au sein d'HTML. Par exemple, vous pouvez définir la règle de référent pour le document entier avec un élément {{HTMLElement("meta")}} dont le name est referrer
:
<meta name="referrer" content="origin">
Ou le définit pour des requêtes spécifiques avec l'attribut referrerpolicy
sur les éléments {{HTMLElement("a")}}, {{HTMLElement("area")}}, {{HTMLElement("img")}}, {{HTMLElement("iframe")}}, {{HTMLElement("script")}}, ou {{HTMLElement("link")}} :
<a href="http://example.com" referrerpolicy="origin">
Autrement, une relation de lien définie à noreferrer
sur un élément a
, area
, ou link
peut être défini :
<a href="http://example.com" rel="noreferrer">
Comme vu précédemment, la relation de lien noreferrer
s'écrit sans trait d'union. Toutefois, quand la règle de référent est spécifiée pour le document entier avec un élément {{HTMLElement("meta")}}, il faut mettre le trait d'union : <meta name="referrer" content="no-referrer">
.
CSS peut demander des ressources référencées dans des feuilles de styles. Ces ressources suivent une règle de référent aussi :
no-referrer-when-downgrade
), moins qu'elle soit remplacée un l'en-tête HTTP Referrer-Policy
dans la réponse de la feuille de styles CSS.style
, la règle de référent du propriétaire du document est utilisée.Règle | Document | Navigation vers | Référent |
---|---|---|---|
no-referrer |
https://example.com/page | n'importe où | (pas de référent) |
no-referrer-when-downgrade |
https://example.com/page | https://example.com/otherpage | https://example.com/page |
https://mozilla.org | https://example.com/page | ||
http://example.org | (pas de référent) | ||
origin |
https://example.com/page | n'importe où | https://example.com/ |
origin-when-cross-origin |
https://example.com/page | https://example.com/otherpage | https://example.com/page |
https://mozilla.org | https://example.com/ | ||
http://example.com/page | https://example.com/ | ||
same-origin |
https://example.com/page | https://example.com/otherpage | https://example.com/page |
https://mozilla.org | (pas de référent) | ||
strict-origin |
https://example.com/page | https://mozilla.org | https://example.com/ |
http://example.org | (pas de référent) | ||
http://example.com/page | n'importe où | http://example.com/ | |
strict-origin-when-cross-origin |
https://example.com/page | https://example.com/otherpage | https://example.com/page |
https://mozilla.org | https://example.com/ | ||
http://example.org | (pas de référent) | ||
unsafe-url |
https://example.com/page?q=123 | n'importe où | https://example.com/page?q=123 |
Si vous voulez spécifier une règle à appliquer par défaut dans les où la règle voulue n'est pas supportée par les navigateurs, utilisez un liste de valeurs séparées par des virgules avec la règle voulue fournie en dernière position :
Referrer-Policy: no-referrer, strict-origin-when-cross-origin
Ici, no-referrer
ne sera utilisée que si strict-origin-when-cross-origin
n'est pas supportée par le navigateur.
Spécifier plusieurs valeurs n'est supporté que dans l'en-tête HTTP Referrer-Policy
et non dans l'attribut referrerpolicy
.
Spécification | Statut |
---|---|
Referrer Policy | Brouillon de l'éditeur. |
{{Compat("http.headers.Referrer-Policy")}}
Referrer-Policy
dans about:config
, l'option s'appelant network.http.referer.userControlPolicy
.network.http.referer.defaultPolicy
et network.http.referer.defaultPolicy.pbmode
.Les valeurs permises sont :
no-referrer
same-origin
strict-origin-when-cross-origin
no-referrer-when-downgrade
(par défaut)