Glossar

Was ist Mixed Content?

19. April 2026

Mixed Content tritt auf, wenn eine über eine sichere HTTPS-Verbindung geladene Webseite Ressourcen (Bilder, Skripte, Stylesheets, Schriftarten, iframes) einbindet, die über eine unsichere HTTP-Verbindung geladen werden. Das ist ein Sicherheitsproblem, weil die HTTP-Ressourcen von einem Angreifer abgefangen, verändert oder ersetzt werden können, obwohl die Hauptseite selbst verschlüsselt ist. Das Schloss-Symbol im Browser verschwindet, und Besucher sehen Warnungen, die ihr Vertrauen in deine Seite untergraben.

Passiver vs. aktiver Mixed Content

Browser unterscheiden zwischen zwei Kategorien von Mixed Content und behandeln jede unterschiedlich:

  • Passiver (Anzeige-) Mixed Content: Dazu gehören Bilder, Audio und Video, die über HTTP geladen werden. Das Risiko ist geringer, weil diese Ressourcen das Verhalten der Seite nicht direkt ändern können. Ein Angreifer könnte ein Bild austauschen, aber keinen Code einschleusen. Ältere Browser luden passiven Mixed Content mit einer Warnung. Moderne Browser blockieren ihn zunehmend ebenfalls, obwohl einige ihn noch mit einem verschlechterten Sicherheitsindikator erlauben.
  • Aktiver Mixed Content: Dazu gehören Skripte, Stylesheets, iframes, Schriftarten und XMLHttpRequests, die über HTTP geladen werden. Aktiver Mixed Content ist weitaus gefährlicher, weil ein manipuliertes Skript Login-Daten stehlen, den Nutzer umleiten oder Malware in die Seite einschleusen kann. Alle modernen Browser blockieren aktiven Mixed Content standardmäßig. Die Ressource wird einfach nicht geladen, was die Seitenfunktionalität komplett beeinträchtigen kann.

Wie Browser mit Mixed Content umgehen

Das Browserverhalten ist über die Jahre strenger geworden. So sieht es heute aus:

  • Chrome: Blockiert allen aktiven Mixed Content. Seit Version 80 aktualisiert Chrome auch gemischte Bilder, Audio und Video automatisch auf HTTPS. Wenn die HTTPS-Version nicht existiert, wird die Ressource blockiert.
  • Firefox: Blockiert aktiven Mixed Content und zeigt ein Schild-Symbol in der Adressleiste an. Passiver Mixed Content löst eine Warnung aus, kann aber in einigen Fällen noch geladen werden.
  • Safari: Blockiert aktiven Mixed Content. Passiver Mixed Content kann je nach Version mit einer Warnung geladen werden.
  • Edge: Folgt demselben Chromium-basierten Verhalten wie Chrome.

Der Trend ist klar: Browser bewegen sich in Richtung Blockierung aller Mixed-Content-Inhalte, sowohl aktiver als auch passiver. Mixed Content zu ignorieren, ist keine Option mehr.

Mixed-Content-Quellen finden

Es gibt mehrere Möglichkeiten, Mixed Content auf deiner WordPress-Seite zu identifizieren:

  • Browser-DevTools-Konsole: Öffne Chrome DevTools (F12), gehe zum Konsolen-Tab und suche nach gelben Warnungen oder roten Fehlern zu Mixed Content. Chrome zeigt dir genau, welche Ressourcen-URL das Problem verursacht.
  • Why No Padlock: Ein kostenloses Online-Tool (whynopadlock.com), das eine URL scannt und alle unsicheren Ressourcen auf der Seite auflistet. Nützlich für eine schnelle Prüfung ohne DevTools.
  • InspectWP-Berichte: InspectWP scannt deine Seite automatisch nach allen Ressourcen, die über HTTP auf einer HTTPS-Seite geladen werden, und listet jede einzelne auf. Das ist der schnellste Weg, ein vollständiges Bild deiner gesamten Seite zu bekommen.
  • SSL Labs: Primär ein SSL/TLS-Konfigurationsprüfer, kann aber auch Mixed-Content-Probleme auf der getesteten Seite aufzeigen.

Häufige Ursachen von Mixed Content in WordPress

Mixed-Content-Probleme in WordPress stammen typischerweise aus wenigen wiederkehrenden Quellen:

  • Fest codierte HTTP-URLs im Content: Wenn du deine Seite von HTTP auf HTTPS migriert hast, enthalten deine alten Beiträge und Seiten möglicherweise noch Bild-URLs und Links, die mit http:// beginnen. Diese waren zum Zeitpunkt der Erstellung korrekt, wurden aber nach der Migration zu Mixed Content.
  • Alte Theme-Assets: Manche älteren Themes oder Child Themes haben fest codierte HTTP-URLs in ihren CSS-, JavaScript- oder Template-Dateien. Ein Stylesheet, das ein Hintergrundbild von http://example.com/bg.jpg lädt, erzeugt Mixed Content.
  • Plugin-Ressourcen: Plugins, die externe Skripte oder Styles über HTTP laden, verursachen Mixed Content. Das ist besonders häufig bei älteren oder schlecht gewarteten Plugins, die nicht für HTTPS aktualisiert wurden.
  • Externe Einbettungen: Iframes, eingebettete Videos oder Widgets von Drittanbieter-Diensten, die HTTP-URLs verwenden. Wenn der Drittanbieter HTTPS unterstützt (die meisten tun es heute), löst ein Wechsel der URL auf HTTPS das Problem.
  • CDN-Konfiguration: Wenn dein CDN nicht darauf konfiguriert ist, Assets über HTTPS auszuliefern, wird jede CSS-, JS- und Bilddatei, die über das CDN geliefert wird, zu Mixed Content.

Mixed Content in WordPress beheben

Die Lösung hängt von der Quelle des Problems ab. Hier sind die gängigsten Lösungen:

  • Datenbank-URL-Ersetzung: Für fest codierte HTTP-URLs im Beitragsinhalt verwende ein Suchen-und-Ersetzen-Tool, um alle Instanzen von http://deinedomain.de durch https://deinedomain.de in der Datenbank zu aktualisieren. Das Plugin Better Search Replace wird dafür häufig verwendet. Es lässt dich Änderungen vor der Anwendung prüfen und funktioniert über alle Datenbanktabellen. Erstelle immer ein Datenbank-Backup, bevor du ein Suchen-und-Ersetzen ausführst.
  • SSL Insecure Content Fixer: Dieses WordPress-Plugin behebt unsichere URLs automatisch on-the-fly. Es schreibt HTTP-URLs im Seitenoutput zu HTTPS um, ohne die Datenbank zu ändern. Eine gute temporäre Lösung, während du die eigentlichen Ursachen behebst, aber es fügt einen kleinen Performance-Overhead hinzu.
  • Really Simple SSL: Ein weiteres beliebtes Plugin, das den HTTP-zu-HTTPS-Übergang handhabt. Es behebt Mixed Content durch Filterung des Seitenoutputs, richtet Redirects ein und aktualisiert die WordPress-Seiten-URL-Einstellungen.
  • Manuelle Theme- und Plugin-Fixes: Wenn der Mixed Content aus einer Theme- oder Plugin-Datei stammt, bearbeite den Quellcode und ersetze http:// durch https:// oder verwende, noch besser, protokoll-relative URLs (//example.com/datei.js) oder die WordPress-Funktion esc_url(), um URLs dynamisch zu generieren.

Datenbank-URL-Ersetzung im Detail

Der gründlichste Weg, Mixed Content aus altem Beitragsinhalt zu beheben, ist ein Datenbank-Suchen-und-Ersetzen. So geht der Prozess:

  1. Erstelle ein Backup deiner Datenbank. Das ist nicht optional; ein falsches Suchen-und-Ersetzen kann deine gesamte Seite kaputt machen.
  2. Installiere und aktiviere das Better Search Replace Plugin.
  3. Suche nach http://deinedomain.de und ersetze es durch https://deinedomain.de.
  4. Wähle alle Datenbanktabellen (besonders wp_posts, wp_postmeta und wp_options).
  5. Führe zuerst einen Trockenlauf durch, um zu sehen, wie viele Ersetzungen vorgenommen würden.
  6. Wenn die Zahlen richtig aussehen, führe die tatsächliche Ersetzung durch.

Für WP-CLI-Nutzer macht der Befehl wp search-replace 'http://deinedomain.de' 'https://deinedomain.de' --all-tables dasselbe über die Kommandozeile. WP-CLI behandelt serialisierte Daten in der Datenbank korrekt, was für Options- und Widget-Einstellungen entscheidend ist.

HTTPS-Redirect per .htaccess

Nachdem du Mixed Content behoben hast, stelle sicher, dass alle HTTP-Anfragen an deine Seite auf HTTPS umgeleitet werden. Das verhindert, dass Besucher und Suchmaschinen auf die HTTP-Version zugreifen. Auf Apache-Servern füge diese Zeilen in deine .htaccess-Datei ein:

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Auf Nginx-Servern füge dies in deinen Server-Block ein:

server {
    listen 80;
    server_name deinedomain.de www.deinedomain.de;
    return 301 https://$server_name$request_uri;
}

Dieser Redirect behebt Mixed Content nicht allein, stellt aber sicher, dass niemand versehentlich die HTTP-Version deiner Seite besucht. Zusammen mit der Datenbank-URL-Ersetzung und den Plugin-Fixes vervollständigt er die HTTPS-Migration.

Was InspectWP prüft

InspectWP scannt deine Seite nach allen Ressourcen, die über HTTP auf einer HTTPS-Seite geladen werden, und listet jede einzelne auf, einschließlich Ressourcentyp und vollständiger URL. Das gibt dir eine klare Checkliste, was genau behoben werden muss. Seiten ohne Mixed-Content-Probleme zeigen ein sauberes Ergebnis, das bestätigt, dass dein HTTPS-Setup korrekt funktioniert.

Prüfe jetzt deine WordPress-Seite

InspectWP analysiert deine WordPress-Seite auf Sicherheitslücken, SEO-Probleme, DSGVO-Konformität und Performance — kostenlos.

Seite kostenlos analysieren