Reporting API auf Strato konfigurieren

Browser-Fehlerberichte auf Ihrem Strato Webhosting empfangen — Reporting-Endpoints per .htaccess und einen PHP-Report-Empfänger einrichten.

Strato · Schritt für Schritt

Reporting API auf Strato

Die Reporting API ermöglicht es Browsern, automatisch Fehlerberichte zu senden — CSP-Violations, COEP-Fehler, Deprecation Warnings und mehr. Statt manuell in der Konsole nach Fehlern zu suchen, erhalten Sie strukturierte JSON-Reports an einen definierten Endpoint. Die Reporting API ist mit 5 von 166 Punkten im Wolf-Agents Web Security Check vertreten.

Auf Strato Shared Hosting setzen Sie den Reporting-Endpoints-Header per .htaccess. Der Report-Empfänger kann ein einfaches PHP-Script auf dem gleichen Webspace sein. Für produktive Setups empfehlen sich externe Dienste wie report-uri.com oder ein eigener Report-Collector. Wolf-Agents erkennt konfigurierte Reporting-Endpoints automatisch und bewertet die Konfiguration.

Wichtig: Der Report-Endpoint muss HTTPS unterstützen und CORS-Header für Browser-Reports akzeptieren. Auf Strato funktioniert ein PHP-basierter Report-Empfänger auf dem gleichen Webspace am einfachsten — keine CORS-Konfiguration nötig.

Reporting API auf Strato implementieren

Konfigurieren Sie den Reporting-Endpoints-Header per .htaccess und erstellen Sie einen PHP-Report-Empfänger auf Ihrem Strato-Webspace.

.htaccess — Reporting
.htaccess Empfohlen
# .htaccess — Reporting-Endpoints und Report-To
<IfModule mod_headers.c>
    # Reporting-Endpoints definieren
    Header set Reporting-Endpoints "csp-endpoint=\"https://ihre-domain.de/api/csp-report\""

    # Report-To Header (Legacy-Browsers)
    Header set Report-To "{\"group\":\"csp-endpoint\",\"max_age\":86400,\"endpoints\":[{\"url\":\"https://ihre-domain.de/api/csp-report\"}]}"
</IfModule>
PHP — Header setzen
index.php Alternative
// PHP — Reporting-Endpoints und Report-To setzen
<?php
header('Reporting-Endpoints: csp-endpoint="https://ihre-domain.de/api/csp-report"');
header('Report-To: {"group":"csp-endpoint","max_age":86400,"endpoints":[{"url":"https://ihre-domain.de/api/csp-report"}]}');

// CSP mit report-to Direktive
header("Content-Security-Policy: default-src 'self'; report-to csp-endpoint");
?>
PHP — Report-Empfänger
api/csp-report.php Endpoint
// PHP — Einfacher Report-Empfaenger (report-receiver.php)
<?php
// Nur POST-Requests akzeptieren
if ($_SERVER['REQUEST_METHOD'] !== 'POST') {
    http_response_code(405);
    exit;
}

$report = file_get_contents('php://input');
$data = json_decode($report, true);

// In Log-Datei schreiben
file_put_contents(
    __DIR__ . '/csp-reports.log',
    date('Y-m-d H:i:s') . ' ' . $report . PHP_EOL,
    FILE_APPEND | LOCK_EX
);

http_response_code(204);
?>
Externe Report-Dienste

Für produktive Setups empfehlen sich externe Dienste wie report-uri.com oder uriports.com. Diese bieten Dashboards, Alerting und Rate-Limiting — ersetzen Sie einfach die Endpoint-URL in der Konfiguration.

Verifizierung

Prüfen Sie den Reporting-Endpoints-Header per curl. Testen Sie auch den Report-Empfänger, indem Sie einen Test-Report per curl -X POST an den Endpoint senden.

Terminal Verifizierung
# Reporting-Endpoints-Header pruefen
curl -sI https://ihre-domain.de | grep -i reporting

# Erwartete Ausgabe:
# reporting-endpoints: csp-endpoint="https://ihre-domain.de/api/csp-report"

# Report-To Header pruefen:
curl -sI https://ihre-domain.de | grep -i report-to

# Erwartete Ausgabe:
# report-to: {"group":"csp-endpoint","max_age":86400,...}
Der Wolf-Agents Web Security Check prüft Reporting-Endpoints automatisch und bewertet sie mit bis zu 5 Punkten.

Häufige Fehler bei Reporting API auf Strato

Report-Endpoint nicht über HTTPS erreichbar

Der Report-Endpoint muss über HTTPS erreichbar sein. Stellen Sie sicher, dass SSL im Strato-Kundenbereich aktiviert ist, bevor Sie die Reporting API konfigurieren.

JSON-Escaping in .htaccess fehlerhaft

Die JSON-Syntax im Report-To-Header erfordert korrekte Escaping in der .htaccess. Doppelte Anführungszeichen müssen mit Backslash escaped werden. Alternative: Setzen Sie den Header per PHP header().

Report-to vs. report-uri Verwechslung

report-uri ist die Legacy-Direktive, report-to der moderne Standard. Setzen Sie beide für maximale Browser-Kompatibilität. report-uri sendet einzelne Reports, report-to bündelt sie.

Log-Datei wächst unbegrenzt

Der PHP-Report-Empfänger schreibt alle Reports in eine Log-Datei. Ohne Rotation wächst diese unbegrenzt. Implementieren Sie eine Log-Rotation oder begrenzen Sie die Dateigröße. Auf Strato Shared Hosting kann eine große Log-Datei Speicherplatz-Probleme verursachen.

Compliance-Relevanz

Die Reporting API ermöglicht proaktives Monitoring von Security-Verstößen und unterstützt das Incident-Management. Gerade für PCI DSS 4.0 ist CSP-Violation-Monitoring auf Zahlungsseiten relevant.

PCI DSS 4.0Anforderung 6.4.3 — Monitoring von CSP-Violations auf Zahlungsseiten
NIS2Art. 21(b) — Bewältigung von Sicherheitsvorfällen, Incident-Management
BSIDER.2.1 — Detektion und Reaktion auf Sicherheitsvorfälle

Wie steht Ihre Domain bei Reporting API?

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