Referrer-Policy header

Baseline Widely available *

This feature is well established and works across many devices and browser versions. It’s been available across browsers since January 2020.

* Some parts of this feature may have varying levels of support.

Der HTTP Referrer-Policy Antwort-Header steuert, wie viele Referrer-Informationen (gesendet mit dem Referer-Header) in Anfragen enthalten sein sollten. Neben dem HTTP-Header können Sie diese Richtlinie in HTML festlegen.

Header-Typ Antwort-Header
Verbotener Anforderungs-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 eine falsche Schreibweise des Wortes "referrer". Der Referrer-Policy-Header teilt diesen Rechtschreibfehler nicht.

Direktiven

no-referrer

Der Referer-Header wird ausgelassen: Gesendete Anfragen enthalten keinerlei Referrer-Informationen.

no-referrer-when-downgrade

Senden Sie den Ursprung, Pfad und die Abfragezeichenfolge in 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. Beispielsweise sendet ein Dokument auf https://example.com/page.html den Referrer https://example.com/.

origin-when-cross-origin

Bei einer gleichherkunftsbezogenen Anfrage auf derselben Protokollebene (HTTP→HTTP, HTTPS→HTTPS) senden Sie den Ursprung, Pfad und die Abfragezeichenfolge. Senden Sie nur den Ursprung für Anfragen an fremde Ursprünge und Anfragen zu weniger sicheren Zielen (HTTPS→HTTP).

same-origin

Senden Sie den Ursprung, Pfad und die Abfragezeichenfolge für gleichherkunftsbezogene Anfragen. Senden Sie den Referer-Header nicht für Anfragen an fremde Ursprünge.

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. Für Anfragen an fremde Ursprünge 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).

Hinweis: Dies ist die Standardrichtlinie, wenn keine Richtlinie angegeben ist oder der angegebene Wert ungültig ist (siehe Spezifikationsrevision November 2020). Früher war no-referrer-when-downgrade der Standard.

unsafe-url

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

Warnung: Diese Richtlinie kann potenziell vertrauliche Informationen aus HTTPS-Ressourcen-URLs an unsichere Ursprünge weiterleiten. Überlegen Sie sorgfältig über die Auswirkungen dieser Einstellung.

Integration mit HTML

Sie können Referrer-Richtlinien auch in 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:

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 eine noreferrer Link-Beziehung an a, area oder link-Elementen festlegen:

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

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

Integration mit CSS

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

  • Externe CSS-Stylesheets verwenden die Standardrichtlinie (strict-origin-when-cross-origin), sofern sie nicht durch einen Referrer-Policy-HTTP-Header in der Antwort des CSS-Stylesheets überschrieben wird.
  • Für <style>-Elemente oder style-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

Eine Fallback-Richtlinie festlegen

Wenn Sie eine Fallback-Richtlinie angeben möchten, falls die gewünschte Richtlinie nicht umfassend genug von Browsern unterstützt wird, verwenden Sie eine durch Kommas getrennte Liste, wobei die gewünschte Richtlinie zuletzt angegeben wird:

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

In dem oben genannten 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 Einstellungen

Firefox-Einstellungen

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

  • Firefox Version 59 und später: 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

Siehe auch