Clear-Site-Data in Joomla konfigurieren

Clear-Site-Data in Joomla aktivieren — über das Built-in HTTP Headers Plugin (seit Joomla 4.0) oder .htaccess-Fallback. Mit vollständiger Verifizierung und Joomla-spezifischen Troubleshooting-Tipps.

Joomla · Schritt für Schritt

Clear-Site-Data in Joomla

Clear-Site-Data löscht Browser-Daten (Cache, Cookies, Storage) beim Logout und verhindert so, dass sensible Daten nach der Session im Browser verbleiben. Mit 3 von 166 Punkten im Wolf-Agents Web Security Check ist dieser Header ein wichtiger Faktor für die Gesamtbewertung Ihrer Joomla-Installation. Ohne korrekte Konfiguration verlieren Sie wertvolle Punkte, die den Unterschied zwischen einer guten und einer mittelmäßigen Security-Bewertung ausmachen können.

Clear-Site-Data sollte nur auf der Logout-Route gesetzt werden -- nicht global. Das HTTP Headers Plugin hat keinen Routen-Filter, daher benötigen Sie ein Custom System Plugin. Das Plugin funktioniert auf jedem Hosting — inklusive Shared Hosting ohne SSH-Zugriff oder Server-Konfigurationszugang. Die Alternative ist die .htaccess-Methode als Apache-Fallback, die Sie nutzen können, wenn das Plugin aus technischen Gründen nicht verfügbar ist. Bei beiden Methoden gilt: Nach jeder Änderung den Joomla-Cache leeren.

Der Wolf-Agents Web Security Check analysiert die Clear-Site-Data-Konfiguration Ihrer Joomla-Installation und zeigt exakt, ob der Header korrekt gesetzt ist, welcher Wert verwendet wird und ob es Verbesserungspotenzial gibt. Über das Web Scan Monitoring werden Sie automatisch per E-Mail benachrichtigt, wenn sich die Konfiguration nach einem Joomla-Update, Extension-Installation oder Server-Migration unbeabsichtigt ändert.

Clear-Site-Data-Implementierung in Joomla

Clear-Site-Data sollte nur auf der Logout-Route gesetzt werden — nicht global. Das HTTP Headers Plugin hat keinen Routen-Filter, daher benötigen Sie ein Custom System Plugin. Die Konfiguration über das Built-in HTTP Headers Plugin ist der empfohlene Weg — eine vollständige GUI im Joomla-Backend unter System → Plugins → System - HTTP Headers, keine Code-Änderungen nötig und keine Server-Konfiguration erforderlich. Alle Einstellungen werden sofort nach dem Speichern wirksam. Die .htaccess-Methode dient als Fallback für Apache-Setups, in denen das Plugin nicht genutzt werden kann. Nutzen Sie niemals beide Methoden gleichzeitig — doppelte Header führen zu unvorhersehbarem Browser-Verhalten.

Empfohlene Methode
PlgSystemCleardata.phpEmpfohlen
# Joomla: Clear-Site-Data per Custom System Plugin
# Das HTTP Headers Plugin hat keinen Routen-Filter
# → Custom Plugin nur für die Logout-Route:

use JoomlaCMSFactory;
use JoomlaCMSPluginCMSPlugin;

class PlgSystemCleardata extends CMSPlugin {
  public function onAfterRoute() {
    $app = Factory::getApplication();
    $task = $app->input->get('task');
    if ($task === 'user.logout') {
      $app->setHeader(
        'Clear-Site-Data',
        '"cache","cookies","storage"'
      );
    }
  }
}
.htaccess Fallback
.htaccessFallback
# Clear-Site-Data nur per PHP/Plugin möglich
# (routenspezifisch — nur beim Logout)
# Nutzen Sie den Plugin-Ansatz oben.

# .htaccess kann Clear-Site-Data nicht
# routenspezifisch setzen!
Cache leeren nach jeder Änderung

Nach Änderungen am HTTP Headers Plugin oder der .htaccess: php cli/joomla.php cache:clean ausführen oder im Backend unter System → Cache leeren. Drittanbieter-Cache-Extensions wie JotCache oder LiteSpeed Cache können veraltete Header zwischenspeichern.

Verifizierung

Nach der Konfiguration im HTTP Headers Plugin oder der .htaccess leeren Sie den Joomla-Cache über php cli/joomla.php cache:clean oder im Backend unter System → Cache leeren. Prüfen Sie den Header anschließend per curl auf verschiedenen Seitentypen — Startseite, Beiträge, Kontaktformulare, Kategorie-Seiten und den Admin-Bereich unter /administrator. Wichtig: Einige Header werden nur über HTTPS gesendet — testen Sie niemals über eine HTTP-URL. Prüfen Sie auch, ob ein CDN oder Reverse-Proxy (Cloudflare, Varnish) den Header eventuell entfernt oder überschreibt. Nutzen Sie den Wolf-Agents Web Security Check für eine vollständige Analyse aller 16 Header-Kategorien mit konkreter Punktbewertung.

TerminalVerifizierung
# 1. Joomla-Cache leeren
php cli/joomla.php cache:clean

# 2. Logout-URL testen
curl -sI "https://ihre-domain.de/index.php?option=com_users&task=user.logout" | grep -i clear-site-data

# Erwartete Ausgabe:
# clear-site-data: "cache", "cookies", "storage"

# 3. Browser DevTools → Network → Logout-Request prüfen
# Der Clear-Site-Data Header sollte in der Response sichtbar sein

Häufige Fehler bei Clear-Site-Data in Joomla

HTTP Headers Plugin kann Clear-Site-Data nicht routenspezifisch setzen

Das HTTP Headers Plugin setzt Header global für alle Seiten. Clear-Site-Data auf allen Seiten würde bei jedem Seitenaufruf Cache, Cookies und Storage löschen. Nutzen Sie ein Custom System Plugin, das den Header nur beim Logout setzt.

Safari unterstützt Clear-Site-Data nur teilweise

Safari hat eingeschränkte Unterstützung für Clear-Site-Data. Behandeln Sie den Header als Progressive Enhancement — nicht als Ersatz für serverseitiges Session-Management und Session-Invalidierung.

Header löscht Cache und Storage global — Performance-Impact

Wenn versehentlich global gesetzt, löscht Clear-Site-Data bei jedem Request den gesamten Browser-Cache. Das führt zu massivem Performance-Verlust. Stellen Sie sicher, dass der Header nur auf der Logout-Route gesetzt wird.

Custom Plugin-Code muss bei Joomla-Updates geprüft werden

Ein Custom System Plugin für Clear-Site-Data muss nach Joomla-Major-Updates auf Kompatibilität geprüft werden. API-Änderungen können das Plugin brechen.

Compliance-Relevanz

Clear-Site-Data erfüllt konkrete Anforderungen aus mehreren Compliance-Frameworks, die für Unternehmen in der EU verbindlich sind. Fehlende oder falsch konfigurierte Header werden bei Sicherheits-Audits, Penetrationstests und automatisierten Compliance-Scans als Schwachstelle gewertet. Die korrekte Konfiguration über das Joomla HTTP Headers Plugin dokumentiert Ihre technischen Maßnahmen und stärkt Ihre Position bei NIS2-Audits.

NIS2 Art. 21 Abs. 2 lit. e — Vollständige Session-Bereinigung als Teil der Systemsicherheit und Zugriffskontrolle
BSI APP.3.1.A14 — Clear-Site-Data als ergänzende Maßnahme zur Session-Bereinigung nach Logout
DSGVO Art. 17 — Recht auf Löschung: Clear-Site-Data unterstützt die clientseitige Datenbereinigung nach Session-Ende
OWASP ASVS V3.3 — Session Logout and Timeout Requirements, clientseitige Datenbereinigung als Defense-in-Depth

Wie steht Ihre Domain bei Clear-Site-Data?

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