So geht’s: WordPress auf SSL umstellen

So geht’s: WordPress auf SSL umstellen

Eine verschlüsselte Übertragung von Daten zwischen Browser und Webserver bringt zusätzliche Sicherheit. Deshalb legt Google zunehmend Wert darauf, dass Websites verschlüsselt per SSL übertragen werden und gewichtet diesen Faktor beim Ranking der Suchergebnisse. Hinzu kommt: Webbrowser weisen User immer deutlicher darauf hin, wenn eine Website nicht verschlüsselt übertragen wird.

Eine Umstellung Deiner Webseite auf SSL ist daher sehr zu empfehlen. Seit bei STRATO jedes Hosting-Paket ein gratis SSL-Zertifikat enthält, kostet die Umstellung keinen Cent extra und ist auch relativ leicht zu bewerkstelligen.

Dennoch sei darauf hingewiesen, dass die Umstellung auf SSL in manchen Fällen kompliziert werden kann. Der Workshop zeigt den Standardweg und gibt einige grundlegende Tipps für Lösungsansätze, wenn es schwieriger werden sollte.

Ausgangspunkt: Eine Website wird vom Browser als „nicht sicher“ eingestuft.
Ausgangspunkt: Eine Website wird vom Browser als „nicht sicher“ eingestuft.

SSL und https – was ist das?

SSL bedeutet „Secure Socket Layer“ und besagt, dass die Daten einer Website verschlüsselt vom Server zum Browser beziehungsweise vom Browser zum Webserver übertragen werden. Eine Verfälschung der Daten oder auch ein Diebstahl von Benutzerdaten vom Browser zum Server soll damit unmöglich gemacht werden.

Das zugehörige Übertragungsprotokoll ist https (Hypertext Transfer Protocol Secure) – im Gegensatz zum derzeitigen Standard http (Hypertext Transfer Protocol). Im Detail erklärt der Wikipedia-Eintrag zu https die Zusammenhänge recht verständlich. Zu erkennen ist eine SSL-gesicherte Webseite an der URL, die mit https:// beginnt.

Schritt 1: SSL-Zertifikat installieren

Damit SSL funktioniert, muss auf dem Webserver ein SSL-Zertifikat installiert sein. Bei STRATO ist in jedem Hosting-Paket ein solches von Symantec ausgestelltes Zertifikat kostenlos enthalten, die Installation gestaltet sich entsprechend einfach.

Im Kundenbereich Deines STRATO-Hosting-Pakets wählst Du dazu die Menü-Option Sicherheit – STRATO SSL.  Das aktiviert das kostenlose SSL-Zertifikat.

Im nächsten Schritt klickst Du auf den Button STRATO SSL und dann auf Zuweisen. Aus der Dropdown-Liste wählst Du die Domain Deines Blogs aus und klickst auf den Button Domain zuweisen.

So weist Du das SSL-Zertifikat Deiner Blog-Domain zu.
So weist Du das SSL-Zertifikat Deiner Blog-Domain zu.

Jetzt ist die Zuweisung in Bearbeitung und unter Status wird ein Uhr-Icon angezeigt. Typischerweise dauert die Bearbeitung einige Minuten bis zu einer Stunde. Dann ist das SSL-Zertifikat aktiv und Du siehst unter Status ein Vorhängeschloss-Symbol.

Screenshot zeigt, wie SSL Zertifikat bei STRATO aktiviert wurde
Im Status erscheint ein Vorhängeschloss-Symbol, sobald das SSL-Zertifikat aktiv und einsatzbereit ist.

Schritt 2: WordPress auf SSL umstellen

Mit der Version 5.7 haben die Entwickler die Umstellung auf SSL deutlich vereinfacht, denn WordPress hat nun eine eigene Funktion für genau diesen Zweck. Sobald Du in Schritt 1 das SSL-Zertifikat der Domain zugeordnet hast, unter der Dein Blog läuft, findest Du im Dashboard-Widget Zustand der Website ein Hinweis, dass es offene Einträge gibt.

Zustand der Website im WordPress Dashboard
Hinweis im Website-Zustandsbericht am Dashboard

Klickst Du auf Website-Zustand in dem Widget, siehst Du in der folgenden Ansicht bei den „kritischen Problemen“ den Hinweis „Deine Website verwendet kein HTTPS“:

Hinweis, dass die Website kein HTTPS verwendet

WordPress erkennt automatisch, ob Du das SSL-Zertifikat zuvor ordnungsgemäß der Domain zugeordnet hast. Ist das der Fall, steht Dir der Button zum „one-click“-Update auf SSL bereit.

Klicke auf den Button Aktualisiere deine Website zur Verwendung von HTTPS. Anschließend erscheint einmalig die Erfolgsmeldung:

Die Website-URLs wurden auf HTTPS umgestellt

Anschließend musst Du Dich neu in Dein WordPress einloggen.

Unter Einstellungen – Allgemein kannst Du erkennen, dass die URLs hier automatisch von http auf https geändert wurden. Auch in der Datenbank sind interne Links und die Einbindung beispielsweise von Bildern in https umgewandelt worden.

Idealerweise hast Du die Umstellung auf SSL nun bereits geschafft. Allerdings solltest Du genau prüfen, of es wirklich keine Probleme gibt. Nicht automatisch umstellen kann WordPress nämlich beispielsweise URLs, die in Dateien Deines Themes wie der functions.php oder style.css enthalten sind. Auch URLs in Plugin-Optionen, Custom Post Types oder Custom Fields könnten Probleme machen.

Umstellung erfolgreich?

Um festzustellen, ob die Umstellung bereits erfolgreich abgeschlossen ist, oder Du noch weitere Anpassungen vornehmen muss, rufst Du Dein Blog im Browser auf. Links oben neben der URL sollte nun ein geschlossenes Vorhängeschloss-Symbol erscheinen. Wenn Du darauf klickst, siehst Du die Meldung „Verbindung ist sicher“ (Google Chrome, Microsoft Edge) oder „Verbindung sicher“ (Firefox). Ist das der Fall, ist der wichtigste Teil der Umstellung erledigt.

Schritt 3: SSL erzwingen in den Backend-Einstellungen bei Strato

Empfehlenswert ist, in den Einstellungen im Strato-Backend zwingende SSL-Verschlüsselung zu aktivieren. Diese Einstellung solltest Du übrigens erst dann vornehmen, denn die Umstellung in WordPress erfolgreich verlaufen ist.

Benutze die Funktion SSL erzwingen, um sicherzugehen, dass Dein Blog ab sofort ausschließlich über die https-URL erreichbar ist und nicht parallel auch unverschlüsselt über http. Die entsprechende Option findest Du an der gleichen Stelle, wo Du zuvor das SSL-Zertifikat der Domain zugewiesen hast.

Bei dem folgenden Fenster solltest Du die obere Variante mit 301-Weiterleitung wählen. Die temporäre Weiterleitung 302 solltest Du nur vorübergehend zum Testen der SSL-Umstellung verwenden. Natürlich kannst Du die Option jederzeit später von 302 auf 301 ändern.

Feature zur automatischen Weiterleitung aller Anfragen auf die neuen https://-URLs

Schritt 4: SEO nicht vergessen …

Ein letzter Schritt ist aus Sicht der Suchmaschinenoptimierung relevant. Er informiert Google zuverlässig über den Wechsel zu SSL. Denn aus Google-Sicht sind die http://- und https://-Varianten nämlich zwei verschiedene Websites und es sollte mittelfristig nur noch die neue https://-Variante von Google erfasst werden.

Falls Du die Google Search Console (ehemals „Webmastertools“) bisher schon verwendet hast, gibt es dort bereits den Eintrag für die http://-Variante. Lege jetzt mit Property hinzufügen Dein Blog zusätzlich auch in der https://-Variante an und belasse die http://-Variante bestehen. Falls Du die Webmastertools bislang noch nicht benutzt hast, lege einfach nur die neue „Property“ mit der https://-URL an.

Hinweis: Anders als in diversen Tutorials im Web angegeben, solltest Du in der Search Console für die alte http://-URL keine Adressänderung vornehmen. Laut Google ist diese Option nicht für den Wechsel zu SSL sinnvoll und vorgesehen. Wenn Deine http://-URLs auf die https://-URLs umgeleitet werden – wie oben in den STRATO Einstellungen beschrieben und vorgenommen – erkennt Google den Wechsel automatisch.

Falls Du früher einmal eine Sitemap an die Google Search Console übermittelt hast: Stelle sicher, dass Du auch diese mit den neuen https://-URLs neu übermittelst. Setzt Du dafür ein Plugin ein,  achte darauf, dass es die Änderung entsprechend berücksichtigt.

Wenn Du Deinen Blog zum Beispiel in Profilen bei Facebook, Twitter, Instagram und Co. verlinkt hast, ändere auch dort die Links auf die https://-URL, damit diese Links Deinen Blog direkt erreichen und nicht erst durch die Umleitung laufen.

Schritt 5: Fehlersuche, wenn die Umstellung nicht erfolgreich verläuft

Bekommst Du bei der Prüfung im Browser die Meldung, dass die Website nicht sicher ist, symbolisiert durch ein unterbrochenes oder durchgestrichenes Vorhängeschloss, ist noch etwas Nacharbeit fällig.

Denn in diesem Fall wird die aufgerufene Seite als solche zwar bereits SSL-verschlüsselt übertragen, nicht aber einige darin eingebundene Komponenten. Dazu gehören oftmals Bilder, eventuell aber auch andere Elemente wie Youtube-Videos.

Das kann aber auch beispielsweise HTML- oder Javascript-Code von Werbebannern sein. Und auch von Plugins eingebundene Elemente könnten die Ursache für das Problem sein. Selbst unflexibel programmierte Themes könnten http://-Referenzen enthalten.

Werden Elemente auf einer verschlüsselten Seite unverschlüsselt geladen, erzeugt das so genannten „mixed content“. Das macht die Seite per Definition insgesamt unsicher – mit entsprechender Warnmeldung im Browser.

Bekommst Du im Browser weiterhin eine SSL-Fehlermeldung, dann bleibt Dir eine genaue Fehleranalyse leider nicht erspart. Aufgrund der Vielzahl der möglichen Ursachen können wir hier nicht alle Eventualitäten besprechen. Wir zeigen aber, wie Du dem Problemen auf die Spur kommst.

Schaue zunächst die Optionen Deiner Plugins genau durch und ändere auch dort gegebenenfalls eingetragene URLs nach https://. Anzeigencode beispielsweise im Plugin Adrotate oder Ähnlichen könnte noch http://-URLs enthalten. Achte aber bei Änderungen darauf, dass diese externen URLs auch tatsächlich via SSL abrufbar sind, sonst hilft auch die Änderung auf https:// nichts.

Treten weiterhin SSL-Fehlermeldungen auf, ist zunächst entscheidend, die nicht mit SSL geladenen Elemente zu identifizieren. Das geht am einfachsten mit den Entwicklertools des Browsers Google Chrome, im Menü unter weitere Tools – Entwicklertools. Klickst Du dort auf den Reiter Security, zeigt Chrome Dir im Console-Fenster die problematischen Mixed Content-Elemente an.

Die Entwicklertools von Google Chrome helfen Dir, unsichere Elemente zu identifizieren.
Die Entwicklertools von Google Chrome helfen Dir, unsichere Elemente zu identifizieren.

Für die Fehlerbehebung sind sowohl Detektivarbeit als auch HTML- oder PHP-Kenntnisse nötig. Ist ein Plugin oder Theme als Übeltäter identifiziert, solltest Du zunächst im zugehörigen Supportforum bei WordPress nach Hilfe suchen. Dort wirst Du schnell feststellen, ob es eine Lösung gibt, oder ob Du das Theme oder Plugin wechseln musst.

Als Übergangslösung könnest Du bei Themes ein Child-Theme anlegen und entsprechende Anpassungen vornehmen. Plugins könntest Du kopieren und daraus ein eigenes Plugin mit entsprechend verändertem Code bauen. Das löst zumindest vorübergehend das SSL-Problem. Langfristig wirst Du Dir da aber jeweils eine dauerhafte Alternative suchen müssen, wenn Du das Theme beziehungsweise Plugin nicht selbst weiter pflegen und aktualisieren willst oder kannst.

Warum ist „Mixed Content“ problematisch?

Das wirklich unangenehme an einer SSL-Umstellung ist, dass sich die verschiedenen Webbrowser sehr unterschiedlich verhalten, wenn sie auf unsichere Webseiten stoßen. Das sind Webseiten, die zwar mit SSL übertragen werden, aber unsichere Elemente enthalten.

Manche Browser bringen nur einen dezenten Hinweis, andere suggerieren dem User eine große Gefahr und bieten gleich auch noch eine Möglichkeit, die Website als gefährlich zu melden. Selbst wenn die Ursache nur ein einziges, nicht verschlüsselt geladenes Bild ist, von dem keine wirkliche Gefahr ausgeht, bekommt der User den Eindruck großer Gefahr vermittelt.

Besonders aggressiv warnt Firefox bei SSL-Fehlern.
Besonders aggressiv warnt Firefox bei SSL-Fehlern.

Deshalb ist es wichtig, sehr genau darauf zu achten, dass wirklich die komplette Website SSL-verschlüsselt übertragen wird. Du solltest Deine Website nach der Umstellung ausgiebig testen, damit wirklich nirgendwo ein Problem auftritt. Denn natürlich findet es kein Leser – und erst recht nicht Suchmaschinen – besonders lustig, wenn statt Deiner Inhalte ein dicker, roter Alarm aufpoppt.

Wenn Du abschließend nochmal testen willst, ob wirklich alles okay ist, gibt Dir der SSL-Test von SSL Labs zusätzliche Sicherheit.

Alles okay? Der SSL-Report von Qualys prüft, ob alles sicher ist.
Alles okay? Der SSL-Report von Qualys prüft, ob alles sicher ist.

Zum Abschluss noch ein Hinweis

Dieser Workshop behandelt den typischen Weg einer SSL-Umstellung von WordPress. Aufgrund der Vielzahl von Themes, Plugins und eventuell individueller Anpassungen können sich Probleme ergeben, die sich in einem solchen Workshop nicht abdecken lassen. Nimm Dir Zeit für die Umstellung und bereite alles gut vor, dann stehen die Chancen für einen reibungslosen Übergang sehr gut. Viel Erfolg!

Suchst Du noch nach dem passenden Hosting für Deinen eigenen WordPress Blog?

Hier geht’s zu unseren Angeboten.

Oder möchtest Du noch mehr Experten-Tipps für WordPress? Dann geht es hier zu den kostenlosen STRATO E-Books:

WordPress für Einsteiger & Fortgeschrittene

Hinweis: Der ursprüngliche Beitrag ist im STRATO Blog zum ersten Mal am 16. Dezember 2016 erschienen. Diesen Beitrag haben wir am 01.07.2021 aktualisiert.

Teilen

  1. Avatar

    Thomas M sagte am

    Für die Suche nach URLs die noch „HTTP“ enthalten, wird der Nutzer etwas allein gelassen. Ich nutze hierfür das Plugin Better Search Replace, https://de.wordpress.org/plugins/better-search-replace/, welches auch gleich „HTTP“ durch „HTTPS“ ersetzen kann.

    Warum wird eigentlich „AdRotate“ erwähnt, ohne zu sagen, worum es sich handelt? Zudem gibt es zur Anzeigenverwaltung das aus Deutschland stammende Plugin Advanced Ads, https://de.wordpress.org/plugins/advanced-ads/, welches zudem datenschutzkonform arbeitet.

    Antworten
    • Avatar

      Franz Neumeier sagte am

      Hallo Thomas,

      ich habe in dem Beitrag bewusst kein Suchen-Ersetzen-Tool empfohlen, weil dabei schnell die Gefahr besteht, dass man auch URLs ersetzt, die nicht ersetzt werden sollen, denn nicht automatisch jede http://-Referenz verursacht ja Mixed-Content-Probleme, insbesondere eben Links, die ggfs. so bleiben müssen, wie sie sind. Aber mit Vorsicht genutzt, kann so ein Plugin natürlich helfen, insofern: Danke für die Ergänzung.

      AdRotate ist einfach nur ein Beispiel, das für Tausende von Plugins steht. Aber es wird eben relativ häufig genutzt wird und ist bei diesem speziellen Aspekt ein häufig auftretender Grund für Mixed-Content-Probleme. An dieser Stelle geht es ja nicht darum, den Leser zum Wechsel seines Ad-Plugins zu drängen, sondern einfach nur um Problembehebung einer bestehenden Installation.

      Herzliche Grüße
      Franz

      Antworten
  2. Avatar

    Jens Käding sagte am

    Brauche ich für eine WP-Multisite eine Wildcard?
    da ja alle Domains unter einer Hauptdomain laufen
    Kunde1.meinedomain.de
    Kunde2.meinedomain.de
    und die Kunden-Domains per Mapping gesteuert werden oder benötige ich dann eine SSL-Flatrate?
    Danke im Voraus
    Jens

    Antworten
  3. Avatar

    Kes sagte am

    Wo finde ich „SSL erzwingen“? Es würde mir nicht angeboten, als ich das Zertifikat installiert habe…

    Antworten
    • Avatar

      Tobias Mayer sagte am

      Hallo,

      Du findest die Option im STRATO Kundenlogin unter SicherheitSTRATO SSL. Das ist das gleiche Menü, über das Du SSL ursprünglich aktiviert hast. Dort findest Du rechts in der Spalte Aktionen den Link SSL erzwingen.

      Beste Grüße

      Tobias

      Antworten
  4. Avatar

    Joe sagte am

    Lieber Franz Neumeier, liebes Strato-Team,
    diese Anleitung hat soeben meine Hompage und meine Nerven gerettet.
    Vielen Dank dafür!
    Joe

    Antworten
Weitere Kommentare laden

Sie können erst kommentieren, wenn Sie unseren Datenschutzbestimmungen und den Cookies zugestimmt haben. Aus Datenschutzrechtlichen Gründen dürfen wir andernfalls keine personenbezogenen Daten von Ihnen aufzeichnen.

Klicken Sie dazu einfach unten im Browser Fenster auf den blauen Button Akzeptieren. Nach dem Neuladen der Seite können Sie Ihr Kommentar schreiben.

 

Diese Webseite verwendet Cookies, um die Nutzung der Seite zu verbessern, den Erfolg von Werbemaßnahmen zu messen und interessengerechte Werbung anzuzeigen. Durch die Nutzung dieser Seite erklären Sie sich damit einverstanden. Informationen