Der aspectra-Blog seit 2012

Umstellung mit Stolpersteinen – ein Lehrlingsbericht

Vor kurzem durfte ich einige Websites von einem Server auf den anderen migrieren, mit dem Auftrag, die Webseiten von HTTP auf HTTPS umzustellen. Ich erzähle euch mal, was ich dabei erlebte.

Zuversichtlich bestellte ich bei Let’s Encrypt die Zertifikate und installierte sie auf unseren Servern. Ein Service-Neustart war schnell gemacht, dazu kam noch ein Hard-Reload im Browser – und schon stolperte ich zum ersten Mal. Anstatt ein grünes Schloss, gab es das gelbe Dreieck mit Ausrufezeichen. „Mixed Content“ hiess die Fehlermeldung. Doch was macht man dagegen? Wie kann man das Problem umgehen?

Auf einer Website gibt es vieles zu erkunden. Bilder, mehr oder weniger informative Texte, Videos und was einem sonst noch so einfällt. Häufig beinhalten die Websites Hyperlinks. Diese können weiterführende Links im angesprochenen Thema sein oder aber auch Links, die Ihre Kreditkarten-Informationen benötigen, da Sie als Erbe von einem Onkel in Kirgisistan 16.4 Millionen zugute haben. Hat man ein CMS wie Joomla, WordPress oder ähnliches, sind die Links einfach zu erstellen und sie werden in den entsprechenden Datenbanken abgespeichert. Kommt man nun auf die Idee, auf HTTPS umzustellen, werden die Links in den Datenbanken nicht automatisch auf HTTPS umgeschrieben. Demnach folgt logischerweise der Mixed Content Fehler. Doch was kann man dagegen machen?

Die Antwort ist ganz einfach. Bei den meisten CMS-Applikationen gibt es sogenannte Plugins, die einem helfen, Fehler des Mixed Contents zu beheben. Ein Beispiel dafür wäre das Plugin Really Simple SSL für Wordpress. Man richtet alles ein, sprich: man bindet das Zertifikat im virtuellen Host ein, stellt im Back-End seine Site URL von HTTP auf HTTPS und installiert das Plugin. Nun kann man den Apache Service neu starten und im Back-End von WordPress das Plugin aktivieren. Voilà: der Mixed Content Fehler ist weg und man ist wieder glücklich. Bei vielen CMS, wie zum Beispiel bei Joomla, ist diese Funktion bereits automatisch integriert. Sollte es vorkommen, dass ein Plugin nicht funktioniert, kann man Notfalls die Links selber in der Datenbank ändern, doch diese Methode ist nicht empfehlenswert. Man macht so eher mehr kaputt als wieder gut.

Es gibt noch einen speziellen Fall, den ich erwähnen möchte. Es kann sein, dass eine Website durch einen Drittanbieter wie Cloudflare geschützt wird. Sprich: die Systeme bei Cloudflare würden als eine Art Proxy dienen. Auf diesem kann man dann einstellen, ob die Anfrage auf die Webseite mit HTTP oder mit HTTPS erfolgt. Hat man so einen Dienst im Einsatz, ist es wichtig, dort zu überprüfen, ob es so eine Einstellung gibt und wenn es sie gibt, sollte sie auf HTTPS umstellt bzw. forciert werden. Nun sollte man gut vorbereitet sein, um seine Seite auf HTTPS umzustellen. Auf die Plätze, fertig, los!