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 Referenzinformationen (gesendet mit dem Referer-Header) mit Anfragen enthalten sein sollen. Neben dem HTTP-Header können Sie diese Richtlinie in HTML festlegen.

Headertyp Antwort-Header
Verbotener Anfrage-Header Nein

Syntax

http
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 Fehler nicht.

Direktiven

no-referrer

Der Referer-Header wird weggelassen: Gesendete Anfragen enthalten keine Referenzinformationen.

no-referrer-when-downgrade

Senden Sie den Ursprung, den Pfad und die Abfragezeichenfolge im Referer, wenn das Sicherheitsniveau des Protokolls gleich bleibt oder verbessert wird (HTTP→HTTP, HTTP→HTTPS, HTTPS→HTTPS). Senden Sie den Referer-Header nicht für Anfragen an weniger sichere Ziele (HTTPS→HTTP, HTTPS→file).

origin

Senden Sie nur den Ursprung im Referer-Header. Ein Dokument unter https://example.com/page.html sendet beispielsweise die Referenz https://example.com/.

origin-when-cross-origin

Beim Ausführen einer gleichherkunftsbezogenen Anfrage mit demselben Protokollebene (HTTP→HTTP, HTTPS→HTTPS) senden Sie den Ursprung, Pfad und die Abfragezeichenfolge. Senden Sie nur den Ursprung für Cross-Origin-Anfragen und Anfragen an weniger sichere Ziele (HTTPS→HTTP).

same-origin

Senden Sie den Ursprung, Pfad und die Abfragezeichenfolge für gleichherkunftsbezogene Anfragen. Senden Sie den Referer-Header nicht für Cross-Origin-Anfragen.

strict-origin

Senden Sie nur den Ursprung, 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 Ursprung, Pfad und die Abfragezeichenfolge bei einer gleichherkunftsbezogenen Anfrage. Bei Cross-Origin-Anfragen senden Sie den Ursprung (nur), 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 bereitgestellte Wert ungültig ist (siehe Spezifikationsüberarbeitung November 2020). Zuvor war der Standard no-referrer-when-downgrade.

unsafe-url

Senden Sie den Ursprung, Pfad und die Abfragezeichenfolge bei jeder Anfrage, unabhängig von der Sicherheit.

Warnung: Diese Richtlinie kann potenziell private Informationen von HTTPS-Ressourcen-URLs an unsichere Ursprünge weitergeben. Berücksichtigen Sie sorgfältig die Auswirkungen dieser Einstellung.

Integration mit HTML

Sie können auch Referrer-Richtlinien innerhalb von HTML festlegen. Beispielsweise können Sie die Referrer-Richtlinie für das gesamte Dokument mit einem <meta>-Element mit einem name von referrer festlegen:

html
<meta name="referrer" content="origin" />

Sie können das referrerpolicy-Attribut an <a>, <area>, <img>, <iframe>, <script> oder <link>-Elementen angeben, um Referrer-Richtlinien für einzelne Anfragen festzulegen:

html
<a href="http://example.com" referrerpolicy="origin">…</a>

Alternativ können Sie ein noreferrer-Linkrelation auf ein a, area oder link-Elementen setzen:

html
<a href="http://example.com" rel="noreferrer">…</a>

Warnung: Wie oben zu sehen ist, wird die noreferrer-Linkrelation ohne Bindestrich geschrieben. Wenn Sie die Referrer-Richtlinie für das gesamte Dokument mit einem <meta>-Element festlegen, sollte sie mit einem Bindestrich geschrieben werden: <meta name="referrer" content="no-referrer">.

Integration mit CSS

CSS kann Ressourcen abrufen, die in Stylesheets referenziert sind. Diese Ressourcen folgen ebenfalls einer Referrer-Richtlinie:

  • Externe CSS-Stylesheets verwenden die Standardrichtlinie (strict-origin-when-cross-origin), es sei denn, sie wird durch einen Referrer-Policy-HTTP-Header auf der Antwort des CSS-Stylesheets überschrieben.
  • Bei <style>-Elementen oder style-Attributen wird die Referrer-Richtlinie des eigenen Dokuments verwendet.

Beispiele

no-referrer

Vom Dokument Navigation zu Verwendeter Referrer
https://example.com/page irgendwohin (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 irgendwohin http://example.com/page

origin

Vom Dokument Navigation zu Verwendeter Referrer
https://example.com/page irgendwohin 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 irgendwohin 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 irgendwohin https://example.com/page?q=123

Angabe einer Fallback-Richtlinie

Wenn Sie eine Fallback-Richtlinie angeben möchten, falls die gewünschte Richtlinie nicht ausreichend von Browsern unterstützt wird, verwenden Sie eine durch Kommas getrennte Liste mit der gewünschten Richtlinie am Ende:

http
Referrer-Policy: no-referrer, strict-origin-when-cross-origin

Im obigen Szenario wird no-referrer nur verwendet, wenn der Browser die Policy strict-origin-when-cross-origin nicht unterstützt.

Hinweis: Das Angeben mehrerer Werte wird nur im Referrer-Policy-HTTP-Header unterstützt und nicht im referrerpolicy-Attribut.

Browser-spezifische Einstellungen/Präferenzen

Firefox-Einstellungen

Sie können die Standard-Referrer-Richtlinie in den Firefox-Einstellungen konfigurieren. Die Präferenznamen sind versionsspezifisch:

  • Firefox Version 59 und höher: network.http.referer.defaultPolicy (und network.http.referer.defaultPolicy.pbmode für private Netzwerke)
  • Firefox Versionen 53 bis 58: network.http.referer.userControlPolicy

Alle 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

BCD tables only load in the browser

Siehe auch