Technik

Was ist Mixed Content, und warum untergräbt es HTTPS?

HTTPS zu aktivieren ist nur die halbe Miete, wenn einzelne Teile der Seite noch heimlich über die alte, unsichere Verbindung geladen werden.

Was es ist

Wird eine Seite sicher über HTTPS ausgeliefert, sollte eigentlich auch alles, was auf dieser Seite geladen wird — jedes Bild, Skript, Stylesheet und eingebettete Video — über HTTPS geladen werden. "Mixed Content" (gemischter Inhalt) ist das, was passiert, wenn die Hauptseite sicher ist, aber ein oder mehrere dieser einzelnen Bestandteile noch immer über das alte, unverschlüsselte http:// geladen werden — oft wegen eines alten Bildlinks oder Einbettungscodes, der bei der Umstellung auf HTTPS nie aktualisiert wurde.

Es heißt "gemischt", weil die Seite dabei gleichzeitig eine Mischung aus sicheren und unsicheren Verbindungen ausliefert, was einen Großteil des Sinns der HTTPS-Umstellung zunichtemacht.

Warum es wichtig ist

Browser behandeln Mixed Content als echtes Sicherheitsproblem, nicht als kosmetische Kleinigkeit — sie blockieren die unsichere Ressource oft stillschweigend komplett (ein Bild oder Skript erscheint dann einfach nicht) oder zeigen ein sichtbares Warnsymbol in der Adressleiste, das das Vertrauen wieder zunichtemacht, das das Schloss-Symbol eigentlich vermitteln sollte. Beides wirkt in den Augen eines sicherheitsbewussten Besuchers schlimmer, als gar kein HTTPS zu haben, weil es aussieht, als wäre etwas aktiv kaputt oder halb konfiguriert.

Weil Mixed Content meist nur von ein oder zwei übersehenen Links tief im Code einer Seite stammt (eine alte Bild-URL, ein Drittanbieter-Einbettung), gehört es auch zu den leichter vollständig lösbaren Problemen auf dieser Liste, sobald man es gefunden hat.

So behebst du es

  1. Öffne deine Seite in einem Browser und prüfe die Entwicklerkonsole (meist über F12 oder Rechtsklick → "Untersuchen" → Reiter "Konsole") auf Warnungen, die "mixed content" oder "unsicherer Inhalt" erwähnen.
  2. Jede Warnung nennt die konkrete Ressource (eine Bild-, Skript- oder Stylesheet-URL), die noch über http:// geladen wird.
  3. Ändere jede dieser URLs so, dass sie mit https:// beginnt — die meisten Ressourcen sind auch über HTTPS verfügbar, selbst wenn der konkrete Link auf deiner Seite nicht aktualisiert wurde.
  4. Bei Drittanbieter-Einbettungen (Videos, Widgets, Anzeigen), die nur eine http://-Version anbieten, prüfe, ob der Anbieter stattdessen einen HTTPS-Einbettungscode zur Verfügung stellt.
  5. Lade die Seite neu und prüfe die Konsole erneut, um zu bestätigen, dass die Warnungen verschwunden sind.

Prüfe, ob deine eigene Website dieses Problem hat

Launch Readiness scannt deine Website in Sekunden auf dieses und ~50 weitere Probleme vor dem Start — kostenlos, ohne Anmeldung.

Kostenlose Prüfung starten