Referrer-Policy
Baseline Widely available *
This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2021.
* Some parts of this feature may have varying levels of support.
Der HTTP Referrer-Policy
Antwort-Header steuert, wie viele Referrer-Informationen (die mit dem Referer
-Header gesendet werden) in Anfragen enthalten sein sollten. Abgesehen vom HTTP-Header können Sie diese Richtlinie in HTML festlegen.
Header-Typ | Antwort-Header |
---|---|
Verbotener Anforderungs-Header | Nein |
Syntax
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
Hinweis:
Der Header-Name Referer
ist ein Schreibfehler des Wortes "referrer". Der Referrer-Policy
-Header teilt diesen Schreibfehler nicht.
Direktiven
no-referrer
-
Der
Referer
-Header wird ausgelassen: Gesendete Anfragen enthalten keine Referrer-Informationen. no-referrer-when-downgrade
-
Senden Sie den origin, Pfad und Abfragezeichenkette in
Referer
, wenn das Sicherheitsniveau des Protokolls gleich bleibt oder verbessert wird (HTTP→HTTP, HTTP→HTTPS, HTTPS→HTTPS). Senden Sie denReferer
-Header nicht für Anfragen an weniger sichere Ziele (HTTPS→HTTP, HTTPS→file). origin
-
Senden Sie nur den origin im
Referer
-Header. Zum Beispiel wird ein Dokument unterhttps://example.com/page.html
den Referrerhttps://example.com/
senden. origin-when-cross-origin
-
Bei einer same-origin-Anfrage zum gleichen Sicherheitsniveau des Protokolls (HTTP→HTTP, HTTPS→HTTPS) senden Sie den origin, Pfad und Abfragezeichenkette. Senden Sie nur den origin für cross-origin-Anfragen und Anfragen an weniger sichere Ziele (HTTPS→HTTP).
same-origin
-
Senden Sie den origin, Pfad und Abfragezeichenkette für same-origin-Anfragen. Senden Sie den
Referer
-Header nicht für cross-origin-Anfragen. strict-origin
-
Senden Sie nur den origin, wenn das Sicherheitsniveau des Protokolls gleich bleibt (HTTPS→HTTPS). Senden Sie den
Referer
-Header nicht an weniger sichere Ziele (HTTPS→HTTP). strict-origin-when-cross-origin
(Standard)-
Senden Sie den origin, Pfad und Abfragezeichenkette bei einer same-origin-Anfrage. Bei cross-origin-Anfragen senden Sie nur den origin, wenn das Sicherheitsniveau des Protokolls gleich bleibt (HTTPS→HTTPS). Senden Sie den
Referer
-Header nicht an weniger sichere Ziele (HTTPS→HTTP).Hinweis: Dies ist die Standardrichtlinie, wenn keine Richtlinie angegeben ist oder der angegebene Wert ungültig ist (siehe Spezifikationsrevision November 2020). Zuvor war
no-referrer-when-downgrade
der Standard. unsafe-url
-
Senden Sie den origin, Pfad und Abfragezeichenkette bei jeder Anfrage, unabhängig von der Sicherheit.
Warnung: Diese Richtlinie wird potenziell private Informationen von HTTPS-Resource-URLs an unsichere Ursprünge weitergeben. Überlegen Sie sorgfältig die Auswirkungen dieser Einstellung.
Integration mit HTML
Sie können auch Referrer-Richtlinien innerhalb von HTML festlegen. Zum Beispiel können Sie die Referrer-Richtlinie für das gesamte Dokument mit einem <meta>
-Element mit einem name von referrer
festlegen:
<meta name="referrer" content="origin" />
Sie können das referrerpolicy
Attribut an <a>
, <area>
, <img>
, <iframe>
, <script>
, oder <link>
-Elemente angeben, um Referrer-Richtlinien für einzelne Anfragen festzulegen:
<a href="http://example.com" referrerpolicy="origin">…</a>
Alternativ können Sie eine noreferrer
Linkbeziehung an a
, area
, oder link
-Elemente festlegen:
<a href="http://example.com" rel="noreferrer">…</a>
Warnung:
Wie oben gezeigt, wird die noreferrer
-Linkbeziehung ohne Bindestrich geschrieben. Wenn Sie die Referrer-Richtlinie für das gesamte Dokument mit einem <meta>
-Element festlegen, sollte sie mit Bindestrich geschrieben werden: <meta name="referrer" content="no-referrer">
.
Integration mit CSS
CSS kann Ressourcen von Stylesheets abrufen. Diese Ressourcen folgen ebenfalls einer Referrer-Richtlinie:
- Externe CSS-Stylesheets verwenden die Standardrichtlinie (
strict-origin-when-cross-origin
), es sei denn, sie wird durch einenReferrer-Policy
HTTP-Header in der Antwort des CSS-Stylesheets überschrieben. - Für
<style>
-Elemente oderstyle
-Attribute wird die Referrer-Richtlinie des eigenen Dokuments verwendet.
Beispiele
no-referrer
Vom Dokument | Navigation zu | Verwendeter Referrer |
---|---|---|
https://example.com/page |
überall | (kein Referrer) |
no-referrer-when-downgrade
Vom Dokument | Navigation zu | Verwendeter Referrer |
---|---|---|
https://example.com/page |
https://example.com/otherpage |
https://example.com/page |
https://example.com/page |
https://mozilla.org |
https://example.com/page |
https://example.com/page |
http://example.com | (kein Referrer) |
http://example.com/page | überall | http://example.com/page |
origin
Vom Dokument | Navigation zu | Verwendeter Referrer |
---|---|---|
https://example.com/page |
überall | https://example.com/ |
origin-when-cross-origin
Vom Dokument | Navigation zu | Verwendeter Referrer |
---|---|---|
https://example.com/page |
https://example.com/otherpage |
https://example.com/page |
https://example.com/page |
https://mozilla.org |
https://example.com/ |
https://example.com/page |
http://example.com/page | https://example.com/ |
same-origin
Vom Dokument | Navigation zu | Verwendeter Referrer |
---|---|---|
https://example.com/page |
https://example.com/otherpage |
https://example.com/page |
https://example.com/page |
https://mozilla.org |
(kein Referrer) |
strict-origin
Vom Dokument | Navigation zu | Verwendeter Referrer |
---|---|---|
https://example.com/page |
https://mozilla.org |
https://example.com/ |
https://example.com/page |
http://example.com | (kein Referrer) |
http://example.com/page | überall | http://example.com/ |
strict-origin-when-cross-origin
Vom Dokument | Navigation zu | Verwendeter Referrer |
---|---|---|
https://example.com/page |
https://example.com/otherpage |
https://example.com/page |
https://example.com/page |
https://mozilla.org |
https://example.com/ |
https://example.com/page |
http://example.com | (kein Referrer) |
unsafe-url
Vom Dokument | Navigation zu | Verwendeter Referrer |
---|---|---|
https://example.com/page?q=123 |
überall | https://example.com/page?q=123 |
Fallback-Richtlinie angeben
Wenn Sie eine Fallback-Richtlinie angeben möchten, falls die gewünschte Richtlinie keine ausreichend breite Browser-Unterstützung hat, verwenden Sie eine durch Kommas getrennte Liste mit der gewünschten Richtlinie als letztes:
Referrer-Policy: no-referrer, strict-origin-when-cross-origin
Im obigen Szenario wird no-referrer
nur verwendet, wenn der Browser die strict-origin-when-cross-origin
-Richtlinie nicht unterstützt.
Hinweis:
Die Angabe mehrerer Werte wird nur im Referrer-Policy
HTTP-Header unterstützt, nicht im referrerpolicy
-Attribut.
Browser-spezifische Präferenzen/Einstellungen
Firefox-Einstellungen
Sie können die Standard-Referrer-Richtlinie in den Firefox-Einstellungen konfigurieren. Die Präferenznamen sind versionsspezifisch:
- Firefox-Version 59 und später:
network.http.referer.defaultPolicy
(undnetwork.http.referer.defaultPolicy.pbmode
für private Netzwerke) - Firefox-Versionen 53 bis 58:
network.http.referer.userControlPolicy
All diese Einstellungen akzeptieren denselben Satz von Werten: 0 = no-referrer
, 1 = same-origin
, 2 = strict-origin-when-cross-origin
, 3 = no-referrer-when-downgrade
.
Spezifikationen
Specification |
---|
Referrer Policy # referrer-policy-header |
Browser-Kompatibilität
Report problems with this compatibility data on GitHubdesktop | mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Referrer-Policy | ||||||||||||
Default policy is strict-origin-when-cross-origin | ||||||||||||
no-referrer-when-downgrade | ||||||||||||
origin-when-cross-origin | ||||||||||||
same-origin | ||||||||||||
strict-origin | ||||||||||||
strict-origin-when-cross-origin | ||||||||||||
unsafe-url |
Legend
Tip: you can click/tap on a cell for more information.
- Full support
- Full support