Referrer-Policy für Astro konfigurieren
Schritt-für-Schritt-Anleitung: Referrer-Informationen per Middleware kontrollieren -- sensible URL-Parameter vor Drittanbietern schützen.
Referrer-Policy in Astro
Referrer-Policy kontrolliert, welche Referrer-Informationen der Browser bei Navigation und Ressourcen-Anfragen mitsendet. Ohne diesen Header senden Browser die volle URL inklusive Query-Parameter an Drittanbieter -- ein Datenschutzrisiko. Der Header ist mit 10 von 166 Punkten im Wolf-Agents Web Security Check relevant.
Die empfohlene Einstellung ist strict-origin-when-cross-origin: Bei Cross-Origin-Anfragen wird nur die Herkunft (Domain) gesendet, bei Same-Origin die volle URL. Für maximalen Datenschutz wählen Sie no-referrer. Wolf-Agents setzt strict-origin-when-cross-origin per Middleware.
Besonders relevant bei Astro: Wenn Dashboard-URLs Query-Parameter wie ?token=abc123 enthalten, könnte der Browser diese bei Klick auf externe Links an Drittanbieter weitergeben. Referrer-Policy verhindert diesen unbeabsichtigten Datenverlust zuverlässig.
Referrer-Policy per Middleware (SSR)
Setzen Sie den Header in src/middleware.ts. Die Middleware laeuft bei jedem SSR-Request und setzt den Header konsistent für alle Seiten. Für sensible Bereiche wie das Dashboard können Sie no-referrer verwenden, für öffentliche Seiten strict-origin-when-cross-origin.
// src/middleware.ts -- Referrer-Policy (SSR)
import { defineMiddleware } from 'astro:middleware';
export const onRequest = defineMiddleware(async (context, next) => {
const response = await next();
// Empfohlen: Herkunft bei Cross-Origin, volle URL bei Same-Origin
response.headers.set('Referrer-Policy',
'strict-origin-when-cross-origin');
return response;
});// src/middleware.ts -- Maximaler Datenschutz
import { defineMiddleware } from 'astro:middleware';
export const onRequest = defineMiddleware(async (context, next) => {
const response = await next();
const url = new URL(context.request.url);
// Sensible Bereiche: kein Referrer an Drittanbieter
if (url.pathname.startsWith('/dashboard')) {
response.headers.set('Referrer-Policy', 'no-referrer');
} else {
response.headers.set('Referrer-Policy',
'strict-origin-when-cross-origin');
}
return response;
});SSG-Hosting-Varianten
Für statische Deployments konfigurieren Sie Referrer-Policy auf dem Webserver oder der Hosting-Plattform. Bei SSG-Output greift die Middleware nicht -- der Header muss auf dem Webserver gesetzt werden.
# Nginx -- Referrer-Policy (SSG)
add_header Referrer-Policy "strict-origin-when-cross-origin" always;
# Alternative: Kein Referrer an Drittanbieter
# add_header Referrer-Policy "no-referrer" always;// vercel.json -- Referrer-Policy
{
"headers": [{
"source": "/(.*)",
"headers": [{
"key": "Referrer-Policy",
"value": "strict-origin-when-cross-origin"
}]
}]
}# public/_headers -- Netlify/Cloudflare Pages
/*
Referrer-Policy: strict-origin-when-cross-originWerte vergleichen
strict-origin-when-cross-origin ist der beste Kompromiss: Analytics-Tools erhalten die Herkunft, aber keine vollständigen URLs. no-referrer bietet maximalen Datenschutz, kann aber Analytics und Affiliate-Links beeinträchtigen. same-origin sendet den Referrer nur bei internen Links -- ebenfalls eine gute Wahl für sensible Anwendungen.
# strict-origin-when-cross-origin (Empfohlen)
# Cross-Origin: nur Origin (https://ihre-domain.de)
# Same-Origin: volle URL (/dashboard/domains?page=2)
# no-referrer (Maximaler Datenschutz)
# Cross-Origin: kein Referrer
# Same-Origin: kein Referrer
# same-origin (Guter Kompromiss)
# Cross-Origin: kein Referrer
# Same-Origin: volle URL Verifizieren
Prüfen Sie den Referrer-Policy-Header im Production-Build und testen Sie das Referrer-Verhalten in der Browser-Console.
# Referrer-Policy prüfen
curl -sI https://ihre-domain.de | grep -i referrer-policy
# Referrer-Policy: strict-origin-when-cross-origin
# Browser-Console: Referrer bei Cross-Origin prüfen
# document.referrer nach Klick auf externen Link Per-Link Referrer-Policy in Astro-Templates
Neben dem HTTP-Header können Sie Referrer-Policy per referrerpolicy-Attribut auf einzelnen Links setzen. Das ist nuetzlich, wenn bestimmte Links einen stärkeren Datenschutz benötigen als der globale Header vorgibt.
In Astro-Templates setzen Sie das Attribut direkt auf <a>-Tags: <a href="https://extern.de" referrerpolicy="no-referrer">. Dies überschreibt den globalen HTTP-Header für diesen spezifischen Link. Besonders relevant für externe Links aus dem Dashboard, die keine Referrer-Informationen weitergeben sollen.
Wolf-Agents setzt referrerpolicy="no-referrer" auf alle externen Links im Dashboard, während der globale Header strict-origin-when-cross-origin für die öffentliche Website verwendet wird. So wird der Datenschutz maximiert, ohne die Analytics-Funktionalität der Marketing-Seiten zu beeinträchtigen.
Auch für Ressourcen-Tags wie <img>, <script> und <link> können Sie das referrerpolicy-Attribut setzen. Das ist relevant, wenn Bilder von externen Servern geladen werden und der Referrer-Header die aktuelle URL des Benutzers verraten wuerde.
Häufige Fehler bei Referrer-Policy in Astro
no-referrer bricht Analytics
no-referrer sendet keinen Referrer -- Analytics-Tools können die Herkunft nicht zuordnen. Verwenden Sie strict-origin-when-cross-origin als Kompromiss, der die Domain weitergibt, aber Query-Parameter schützt.
unsafe-url gesetzt
unsafe-url sendet immer die volle URL inklusive Query-Parameter an alle Ziele. Verwenden Sie niemals diesen Wert -- er gibt sensible Daten wie Session-Tokens oder Filter-Parameter an Drittanbieter weiter.
Meta-Tag überschreibt Header
Ein <meta name="referrer">-Tag im HTML kann den HTTP-Header überschreiben. Entfernen Sie Meta-Tags, wenn Sie den Header per Middleware setzen. In Astro-Layouts kann ein vergessenes Meta-Tag die Middleware-Konfiguration aufheben.
prerender-Seiten ohne Header
Prerenderte Seiten erhalten keine Middleware-Header. Setzen Sie Referrer-Policy auf dem Webserver, um auch statische Seiten im Hybrid-Modus abzudecken.
Compliance-Relevanz
Referrer-Policy schützt vor unbeabsichtigter Datenweitergabe und unterstützt DSGVO-konforme Webauftritte. Wenn URLs personenbezogene Daten enthalten (z.B. Email-Adressen in Query-Parametern), kann die Weitergabe an Drittanbieter gegen DSGVO Artikel 5 verstoßen. NIS2 fordert technische Maßnahmen zum Datenschutz. Der Wolf-Agents Web Security Check bewertet Referrer-Policy mit bis zu 10 Punkten.
Wie steht Ihre Domain bei Referrer-Policy?
Prüfen Sie es jetzt — kostenlos, ohne Registrierung, mit 166 Prüfpunkte.