Clear-Site-Data für Caddy

Clear-Site-Data im Caddyfile einrichten — mit handle /logout Block, header-Direktive und redir für einen sicheren 302-Redirect.

Caddy · Schritt für Schritt

Clear-Site-Data auf Caddy

Caddy unterstützt Clear-Site-Data nativ über die header-Direktive im Caddyfile. Der Header wird in einem handle /logout-Block gesetzt, der nur Requests an den Logout-Pfad abfängt. Caddy übernimmt HTTPS automatisch — Clear-Site-Data funktioniert sofort ohne zusätzliche Konfiguration.

Clear-Site-Data bringt 3 von 166 Punkten im Wolf-Agents Web Security Check. Die Implementierung in Caddy ist besonders einfach: 4 Zeilen im Caddyfile, Hot-Reload ohne Downtime.

1 Schritt 1 von 3

Handle-Block für Logout erstellen

Erstellen Sie einen handle /logout-Block im Caddyfile. Die header-Direktive setzt den Clear-Site-Data Header, redir leitet zur Startseite weiter.

Caddyfile Logout
# Clear-Site-Data — nur auf dem Logout-Endpoint!
ihre-domain.de {
    # Logout-Route abfangen
    handle /logout {
        header Clear-Site-Data `"cache", "cookies", "storage"`
        header Cache-Control "no-store"
        redir / 302
    }

    # Alle anderen Requests an das Backend
    reverse_proxy localhost:3000
}
Backticks für Anführungszeichen

Caddy erlaubt Backticks als äußere Begrenzung. Der Header-Wert wird korrekt als "cache", "cookies", "storage" an den Browser gesendet — die Backticks selbst erscheinen nicht im HTTP-Header.

2 Schritt 2 von 3 · Optional

Matcher für mehrere Logout-Pfade

Wenn Ihre Anwendung mehrere Logout-Pfade hat (z.B. /logout und /api/logout), können Sie einen Named Matcher verwenden, um den Header auf alle Pfade gleichzeitig zu setzen.

Caddyfile Matcher
ihre-domain.de {
    # Matcher für alle Logout-Pfade
    @logout path /logout /api/logout

    handle @logout {
        header Clear-Site-Data `"cache", "cookies", "storage"`
        header Cache-Control "no-store"
        redir / 302
    }

    reverse_proxy localhost:3000
}
3 Schritt 3 von 3

Caddyfile neu laden und testen

Laden Sie das Caddyfile per Hot-Reload neu — kein Server-Neustart nötig. Verifizieren Sie den Header mit curl.

Caddyfile neu laden:
caddy reload
Header überprüfen:
curl -I https://ihre-domain.de/logout | grep -i clear
Bei Syntaxfehlern im Caddyfile bleibt die alte Konfiguration aktiv — caddy reload meldet den Fehler, ohne die laufende Konfiguration zu beeinträchtigen. Kein Ausfallrisiko.

Wie steht Ihre Domain bei Clear-Site-Data?

Prüfen Sie es jetzt — kostenlos, ohne Registrierung, mit 166 Prüfpunkte.

Häufig gestellte Fragen

Wie escape ich die Anführungszeichen im Caddy-Clear-Site-Data Header?

In Caddy verwenden Sie Backticks als äußere Begrenzung, damit die inneren Anführungszeichen als Teil des Header-Wertes erhalten bleiben. Alternativ können Sie Backslash-Escaping verwenden. Backticks sind in Caddy die empfohlene Methode für Werte mit Anführungszeichen.

Was ist der Unterschied zwischen handle und route in Caddy?

handle ist exklusiv — nur der erste passende handle-Block wird ausgeführt. route erlaubt mehrere Blöcke, die nacheinander abgearbeitet werden. Für Clear-Site-Data auf dem Logout-Endpoint ist handle die richtige Wahl: Der Logout wird vollständig im handle-Block behandelt, ohne dass andere Direktiven eingreifen.

Kann ich Clear-Site-Data für mehrere Logout-Pfade setzen?

Ja. Verwenden Sie handle /logout oder handle /api/logout als separate Blöcke, oder nutzen Sie einen Matcher mit @logout path /logout /api/logout und referenzieren Sie ihn in der header-Direktive: header @logout Clear-Site-Data "...".

Funktioniert Clear-Site-Data mit Caddy als Reverse Proxy?

Ja. Setzen Sie den Clear-Site-Data Header im handle-Block und leiten Sie mit reverse_proxy an Ihr Backend weiter. Caddy fügt den Header zur Backend-Response hinzu. Achten Sie darauf, dass das Backend den Header nicht doppelt setzt.

Brauche ich einen Neustart für Caddy-Konfigurationsänderungen?

Nein. Caddy unterstützt Hot-Reloading mit caddy reload. Die neue Konfiguration wird ohne Downtime übernommen. Bei Syntaxfehlern im Caddyfile bleibt die alte Konfiguration aktiv — kein Risiko für Ausfälle.