Anleitung: WordPress Mixed Content Fehler beheben – manuell oder per Plugin

5 Min.
WordPress Mixed Content

Du stellst WordPress auf HTTPS um? Das kann zu sogenannten Mixed Content Fehlern führen. Browser wie Google Chrome zeigen deine Webseite dann als unsicher an, oder blockieren sie ganz. Wir zeigen dir mehrere Varianten, wie du Mixed Content Fehler mit WordPress behebst.

Ein Mixed Content Fehler tritt immer dann auf, wenn auf deiner Seite bzw. einer Unterseite HTTP-Ressourcen geladen werden, obwohl die Seite eigentlich nur unter HTTPS erreichbar sein sollte.

Mixed Content Fehler erkennen

Im Browser deiner Besucher wird die Seite dann als “nicht sicher” angezeigt. Auch du kannst über einen Aufruf deiner Seiten sehr schnell erkennen, ob sie eventuell ein Problem mit Mixed Content haben:

Nicht sichere Verbindung
Nicht sichere Verbindung, angezeigt in Google Chrome

“Eventuell” deswegen, weil sich hinter der Anzeige “nicht sicher” auch andere Fehler verbergen können. Zur genaueren Analyse komme ich gleich noch.

Ein Mixed Content Fehler wirkt unseriös. Er führt dazu, dass viele deiner Besucher abbrechen. Google blockiert die Auslieferung von Webseiten mit Mixed Content zunehmend, über seinen Browser Chrome. Nutzer haben zwar die Möglichkeit, die gesperrten Inhalte manuell nachzuladen. Doch das Vertrauen in dein Angebot ist dann bereits beschädigt.

Ursachen für Mixed Content in WordPress

Du hast deine Webseite bereits auf SSL bzw. auf HTTPS umgestellt, aber einzelne Elemente werden noch von HTTP-Quellen geladen? Die Ursachen hierfür können sein:

  • Scripte wie etwa CSS- oder JavaScript-Dateien
  • Eingebundene Schriften, zum Beispiel Google Fonts
  • Sonstige externe Dienste und Snippets
  • Bilder und Videos auf deinen WordPress-Seiten, die noch auf die HTTP-Adresse verweisen statt auf HTTPS

Dementsprechend vielfältig sind auch die Quellen:

  • Plugins für WordPress und WooCommerce
  • WordPress Themes
  • Eingebundener Quellcode auf deinen Seiten und Beiträgen bzw. in Gutenberg
  • Alte bzw. fehlerhafte Verlinkungen
  • Widgets
  • Social Media Anbindungen
  • Tools für das Tracking

Plugins und Themes können vor allem dann zu Mixed Content Fehlern führen, wenn sie veraltet sind oder nicht mehr weiterentwickelt werden. Generell solltest du nach einer Umstellung von deinem Portal, Blog oder Onlineshops auf HTTPS prüfen, ob und welche Unterseiten von Mixed Content betroffen sind.

Anleitung: WordPress Mixed Content Fehler beheben - manuell oder per Plugin

Mixed Content finden

Mit einem Browser kannst du recht schnell die Verursacher von Mixed Content identifizieren. So gehst du in Google Chrome vor, bei anderen Browsern ist es ganz ähnlich:

  1. Klicke auf einem beliebigen Bereich deiner Seite, die du untersuchen willst, die rechte Maustaste. Wähle dann die Option “Untersuchen”.
  2. Wechsle in den Tools zum Reiter “Security”. Dort siehst du unter “Resources” auf einen Blick, ob es Mixed Content Fehler gibt.
  3. In der Fehlerkonsole (“Console”) werden die genauen Quellen für die falsche Einbindung aufgelistet.

Hier ein kleines Beispiel, wie die Analyse in der Konsole von Chrome aussieht:

Fehlerkonsole Chrome
Mixed Content Fehler in der Konsole in Chrome

Die Fehlermeldungen kannst du nun Schritt für Schritt beheben, indem du die HTTP-Einbindungen durch die jeweiligen HTTPS-Varianten ersetzt. Oder indem du die Ursache – etwa ein Plugin oder ein Widget – notfalls ganz entfernst.

WordPress Mixed Content Fehler beheben lassen

Zum Teil musst du dafür dein WordPress Theme und die CSS-Dateien anpassen. Du hast selbst keine technischen Kenntnisse in WordPress? Dann gibt es folgende Möglichkeiten:

  • Du beauftragst deine Agentur oder eine(n) WebdesignerIn
  • Du kontaktierst den Hersteller des Themes und bittest ihn, die Fehler zu beheben – oder dir die entsprechende Anleitung zu liefern
  • Du nutzt das WordPress Plugin Realtime-Find-Replace

Wichtig im letzten Fall: Dieses Plugin maskiert das Problem nur. Für die Zukunftssicherheit deiner Seite – aber auch um nicht unnötig Ballast in WordPress zu erzeugen – solltest du die HTTP-Links vollständig durch HTTPS-Links ersetzen.

Tipp: Du willst dein Theme selbst bearbeiten? Dann achte darauf, ein Child Theme zu verwenden. Siehe unsere Anleitung Child-Theme für WordPress.

Lösung mit Search und Replace

In deiner WordPress Datenbank verstecken sich viele interne Verweise, die noch auf eine HTTP-Adresse zeigen? Dann kannst du diese massenhaft bzw. automatisiert auf HTTPS abändern, per Search and Replace. Wir empfehlen hierfür das Plugin Better Search Replace. Die Vorteile des Tools:

  • Die Tabellen, in denen du suchen und ersetzen willst, lassen sich bei Bedarf einzeln auswählen
  • Es gibt eine Testlauf-Funktion – sehr praktisch um vorab zu kontrollieren, wie viele Felder geändert werden und ob du die Suchanfrage vielleicht falsch bzw. zu umfassend gestaltet hast
  • Unterstützung serialisierter Arrays und Objekte für alle Tabellen
  • Unterstützt WordPress Multisites

Eine noch detailliertere Auswertung, wie sich Search & Replace auswirken wird, gibt es erst in der kostenpflichtigen Pro-Version. Aber auch so leistet das Werkzeug praktische Hilfe.

Better Search Replace Plugin
Das WordPress Plugin Better Search Replace

Mixed Content WordPress Plugin

Du willst die Fehler schnell beheben, kannst dies aber nicht selbst tun? Und du hast gerade keine Agentur oder Freelancer zur Hand? Es gibt auch Plugins für WordPress, die dir einen Teil der Arbeit abnehmen. Zum Beispiel der SSL Insecure Content Fixer.

Bereits in den Standard-Einstellungen behebt das Tool zentrale Mixed Content-Fehler:

  • Skripte, die auf wp_register_script() oder wp_enqueue_script() zugreifen
  • Stylesheets basierend auf wp_register_style() oder wp_enqueue_style()
  • Bilder und ähnliche Dateien, die unter anderem wp_get_attachment_image() bzw. wp_get_attachment_image_src() aufrufen
  • Daten, die von wp_upload_dir() zurückgegeben werden, etwa für Captchas

Weitere Fehler im Content – zum Beispiel aus Themes, Plugins oder aus Widgets – lassen sich ebenfalls fixen. Die Anpassungen erfolgen dabei in einem Stufenmodell:

SSL Insecure Content Fixer
Ein Teil der Optionen des SSL Insecure Content Fixer Plugin

Die Entwickler weisen jedoch darauf hin, dass sich die Bereinigung per Plugin negativ auf die Performance deiner WordPress-Installation auswirken kann. Mehr zur Funktionsweise des Insecure Content Fixer findest du hier.

Mixed Content und Cache

Generell gilt, wie bereits erwähnt: Eine dauerhafte manuelle Bereinigung von Mixed Content Fehlern ist sinnvoller, als ein Plugin zu verwenden. Denn zusätzliche Plugins und Aufrufe erzeugen zusätzliche Aufrufe. Ganz abgesehen davon, dass Plugins ein zusätzliches Einfallstor für Angriffe von Hackern sein können.

Wie du Mixed Content im Rahmen einer Datenbank-Migration bereinigen kannst, das verrät René Dasbeck in seiner Anleitung WordPress Mixed Content Probleme lösen. Du setzt auf ein Plugin für Caching? René weist darauf hin, dass einen vorhandenen Cache vor der Bereinigung leeren solltest. Denn in diesem können sich ebenfalls alte Einträge mit unsicheren Requests verbergen.

Du hast Fragen zum Thema Mixed Content? Nutze gerne die Kommentarfunktion. Du willst über neue Beiträge zu WordPress informiert werden? Dann folge uns auf TwitterFacebook oder über unseren Newsletter.

Beitragsbild: Markus Winkler

Ähnliche Artikel

Kommentare zu diesem Artikel

Michael Hörnlimann
Michael Hörnlimann

Ich finde die Website https://www.whynopadlock.com/ ganz hilfreich, wenn es um das Aufspüren von Mixed Content geht.
Das Tool funktioniert allerdings nur für die exakt eingetippte Seite und nicht für die gesamte Website inkl. Unterverzeichnisse, finde es aber trotzdem super.

Auf ein Plugin verzichte ich für diesen Zweck bewusst, da das Finden von HTTP-Pfaden direkt in der Datenbank doch ganz gut klappt. Oder dann eben wie im Artikel beschrieben über die Browser Console.

Viele Grüsse
Michael

G
Gabriele Brandhuber

Danke für die tolle Übersicht, sehr hilfreich! Herzliche Grüße, Gabriele

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.