Du willst für besseren Datenschutz sorgen und deine WordPress-Website auf HTTPS umstellen?
Dann lies weiter!
In meiner ausführlichen Anleitung erfährt du, wie du die Umstellung so reibungslos wie möglich über die Bühne bringen kannst.
In 8 einfachen und nachvollziehbaren Schritten.
Warum auf HTTPS umstellen?
Es gibt sehr viele gute Gründe, deine Website auf HTTPS umzustellen. Ich empfehle dir deshalb die Umstellung nicht auf die lange Bank zu schieben:
- Du bist damit rechtlich auf der sicheren Seite, vor allem wenn deine Website personenbezogenen Daten, z. B. über Kontaktformulare oder einen Online-Shop, sammelt.
- SSL-Verschlüsselung ist schon seit August 2014 ein Ranking-Faktor bei Google und ist seitdem immer wichtiger geworden!
- Deine Websites wird durch HTTPS schneller, weil du vom schnelleren http/2 Gebrauch machen kannst (sofern dein Hosting-Anbieter das unterstützt).
- Große Browser wie Google Chrome und Firefox brandmarken Websites ohne Verschlüsselung als „nicht sicher“. Vor allem, wenn diese Formulare enthalten, welche man persönliche Daten an die Website übermittelt werden.
- Mehr Vertrauen bei Lesern und Kunden
Die Umstellung auf HTTPS hat jedoch auch einige Nachteile, die hier nicht unerwähnt bleiben sollen:
- Einmaliger Aufwand durch Umstellung der URLs auf deiner Website und bei Drittdiensten (ca. 60 Minuten bis 2 Stunden)
- Social Shares werden bei manchen Plugins nicht mehr angezeigt
1. SSL-Zertifikat auf dem Server installieren
Damit deine Website durch SSL abgesichert werden kann, muss zunächst ein SSL-Zertifikat spezifisch für deine Domain auf deinem Server installiert sein.
Bei Hosting-Anbietern, die das kostenlose Let’s Encrypt unterstützen, wie z. B. webgo oder all-inkl.com (allerdings erst ab dem Paket PrivatPlus), kannst du das in der Regel selbst im Adminbereich deines Hosting-Pakets oder Servers einstellen:

Sollte dein Hosting-Anbieter kein Let’s Encrypt unterstützen, musst du den Support zur Einrichtung eines kostenpflichtigen SSL-Zertifikats kontaktieren. Ein einfaches Domain-Validated-Zertifikat, wie z. B. RapidSSL, das für die meisten Blogs und Websites vollkommen ausreicht, kostet zwischen 15 und 40 € pro Jahr.
Es kann sich jedoch auch ein Hoster-Wechsel empfehlen. Denn in 2020 sollte eigentlich niemand mehr für ein SSL-Zertifikat bezahlen müssen!
Eine Übersicht darüber, welche Hoster Let’s Encrypt unterstützen und welche nicht, findest du in meinem Webhosting-Vergleich.
Bei einem vServer oder Dedicated Server kannst (oder musst) du unter Umständen das SSL-Zertifikat selbst installieren. Das ist ein bisschen mehr Aufwand, aber dafür kannst du auch ein paar Euro im Jahr sparen. Da es viele verschiedene Webserver-Systeme gibt, würde eine Anleitung dafür jedoch den Rahmen dieser Anleitung sprengen.
2. WordPress- und Website-Adresse anpassen
Ist das SSL-Zertifikat auf dem Server installiert, ist der nächste Schritt, deine URLs in WordPress anzupassen.
Dazu loggst du dich bei WordPress ein, gehst zu Einstellungen > Allgemein und ersetzt sowohl im Feld WordPress-Adresse (URL) als auch im Feld Website-Adresse (URL), das http in deinen URLs durch https.

3. Permalinks aktualisieren
Nach dem Ändern der WordPress- und Website-Adresse musst du einmal deine Permalinks (unter Einstellungen > Permalinks) erneut abspeichern, damit diese mit deiner neuen URL aktualisiert werden:

Machst du das nicht, werden beim Abruf eines Beitrags oder einer Seite 404-Fehler anzeigt.
4. Alte URLs in der WordPress-Datenbank ersetzen
Das Aktualisieren der Permalinks hat schon einmal dafür gesorgt, dass deine Seite wieder abrufbar ist.
Leider werden dadurch nicht alle URLs in WordPress durch die neuen URLs mit HTTPS ersetzt. So sind in allen Beiträgen und Seiten noch immer die alten URLs mit HTTP zu finden (z. B. bei Links zu eigenen Beiträgen oder zu eingebundenen Medien). Auch in allen Plugins und Themes wurden die alten URLs noch nicht durch die neuen ersetzt.
Das kann dazu führen, dass Teile deiner Website noch über HTTP geladen werden. Dadurch wird in vielen Browsern eine sogenannte Mixed Content Warnung ausgegeben (und z. B. neben deiner URL kein kleines grünes Schloss, sondern ein rotes Schloss angezeigt).
Und das ist nicht gut für Besucher und auch nicht gut für dein Google-Ranking!
Je nach Größe deiner Website kann es sehr zeitaufwändig sein, all diese URLs per Hand zu ersetzen. Am besten ist es deshalb dafür das kostenlose Plugin Better Search Replace zu installieren.
Gehe im WordPress-Backend zu Werkzeuge > Better Search Replace.
Gib dort bei Suchen nach deine alte URL mit HTTP und bei Ersetzen durch deine neue URL mit HTTPS ein. Dann markierst du bei Tabellen auswählen alle Tabellen mit Strg + A und nimmst das Häkchen bei Testlauf? heraus:

5. Redirect von HTTP auf HTTPS erstellen
Damit jede Anfrage von HTTP auf HTTPS weitergeleitet wird und deine Website nicht unter beiden Protokollen erreichbar ist, ist es erforderlich, einen 301 Redirect zu erstellen.
Dazu musst du auf deinen FTP-Server zugreifen und folgenden Code in die .htaccess-Datei einfügen (die Datei befindet sich in deinem WordPress-Hauptverzeichnis).
RewriteEngine On RewriteCond %{HTTPS} !=on RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Zum Öffnen und Bearbeiten der Datei empfehle ich Notepad++ oder Brackets zu verwenden. Der Code sollte an oberster Stelle vor allen anderen Einträgen platziert werden.
Sollte deine WordPress-Installation auf einem nginx-Server liegen (das ist meistens nicht der Fall), musst du folgenden Code in deine nginx.conf einfügen:
if ($scheme = http) { return 301 https://$server_name$request_uri; }
6. Caches leeren
Damit deine Änderungen auch auf deiner Live-Website übernommen werden, solltest du den Cache deines Caching-Plugins (wie z. B. Cache Enabler, WP Super Cache, W3 Total Cache, WP Rocket etc.) leeren.
Wenn andere Plugins Caching betreiben, solltest du deren Caches ebenfalls leeren. Dies ist z. B. bei Contextual Related Posts, Simple Press, Autoptimize oder ASA 2 Pro der Fall.
7. Trouble-Shooting: Immer noch kein grünes Schloss?
Dir wird im Browser immer noch eine Mixed Content Warnung angezeigt werden und kein grünes Schloss erscheint?
Dann verbergen sich auf deiner Website immer noch Ressourcen (Bilder, Javascript, CSS etc.), die über HTTP abgerufen werden.
7.1 Häufige Fehlerquellen
Unverschlüsselt geladene Ressourcen verbergen sich oft in externen Ressourcen, wie z. B.:
- extern geladene Fonts (z. B. Google Fonts oder FontAwesome)
- extern geladene Scripte (z. B. der Pinterest Button, Facebook Like Box oder Widgets)
- Badges von Blogverzeichnissen und Toplisten
- Werbebanner und -dienste
- Tracking-Tools (z. B. Google Analytics oder Matomo)
Alte URLs können sich auch in einem Child-Theme (mit eigenen Anpassungen) oder einem länger nicht aktualisiertes Theme oder Plugin verbergen.
Es empfiehlt sich also, alle installierten Plugins sowie dein Theme zu aktualisieren und die Dateien deines Child-Theme zu überprüfen.
Überprüfe auch unbedingt deine CSS-Dateien und Custom CSS im Customizer (zu finden unter Design > Customizer im WordPress-Adminbereich). Denn in manchen Fällen können sich dort über HTTP geladene Bilder (z. B. Hintergrundbilder) verbergen.
7.2 Überprüfung des Quelltextes
Um herauszufinden, wo sich die Störenfriede verbergen, bietet es sich an, den Quelltext der Seite über den Browser zu öffnen und nach http://zu suchen:

7.3 Überprüfung mit den Chrome Developer Tools
Auch die Chrome Developer Console eignet sich sehr gut, um unverschlüsselt geladene Ressourcen zu finden. Du öffnest diese in Google Chrome oder Opera durch Rechtsklick auf deine Website. Im dann erscheinenden Kontextmenü klickst du auf Element untersuchen.
Im Reiter Console werden Warnungen angezeigt, wenn Ressourcen über HTTP geladen werden:

8. URL bei Drittdiensten ändern
Die Umstellung von WordPress auf HTTPS kann dazu führen, dass mit deiner Website verbundene Dienste nicht mehr funktionieren. Bitte überprüfe deshalb alle mit deiner Website verbundenen Apps oder Integrationen, z. B. APIs von sozialen Netzwerken, und ersetze die alten URLs durch die neuen.
8.1 Auf deinen Social-Media-Kanälen
Um unnötige Weiterleitungen zu verhindern, solltest du deine URL auch in sozialen Netzwerken ändern. Dazu zählen z. B.:
- Facebook-Seite (auch bei Link zu Impressum und Datenschutzerklärung)
- Facebook-Gruppen (ggf. vorhanden in der Gruppenbeschreibung, Ankündigungen etc.)
- Pinterest-Profil (auch bei Impressum)
- Instagram (und ggf. auch Linktree)
- Google+
- Eintrag bei Google My Business und Bing Places
- YouTube (auch bei Impressum)
8.2 In APIs
Damit Verbindungen zu APIs richtig funktionieren, solltest du auch dort deine URL ändern. Da betrifft z. B. eigene Apps bei Facebook oder Instagram.
Denk auch daran, zur Funktion der App notwendige URLs ändern, wie z. B. die Valid redirect URIs bei Instagram oder andere URLs, die zur Authentifizierung genutzt werden:

8.3 Bei Google Analytics
Bei Google Analytics kannst du deine URL unter Verwaltung > Property-Einstellungen > Standard-URL auf HTTPS umstellen:

8.4 In der Google Search Console
Du musst deine URL auch in der Google Search Console ändern, sonst werden Klicks nicht mehr in der Suchanalyse angezeigt.
Leider kann man nicht einfach die URL ändern, denn http:// und https:// gelten als unterschiedliche Properties.
Du musst stattdessen deine bestehende Property löschen und deine Website als Property mit HTTPS in der URL erneut hinzufügen:

Bitte denk unbedingt daran, nach Erstellung der neuen Property deine Sitemap noch einmal neu an Google zu übermitteln:

8.5 In der E-Mail-Signatur und im Newsletter
Wenn du, wie ich, deine Website in der E-Mail-Signatur verwendest, solltest du auch dort die URL auf die verschlüsselte SSL-Variante ändern.
Das gilt auch für Links, die in deinem Newsletter zu finden sind (z. B. Links zu Impressum, Datenschutzerklärung, Startseite, Bildern auf deinem Server etc.).
8.6 Affiliate-Programme und -Links
Bei Affiliate-Programmen und -netzwerken ist es oft erforderlich, die eigene URL in einem Profil anzugeben oder eine Werbefläche mit der eigenen URL anzulegen. Auch dort solltest du die alte durch die neue URL ersetzen (wenn möglich).
Zudem solltest du alle auf deiner Website eingebundenen Affiliate-Links ebenfalls auf HTTPS umstellen. Dafür kannst du ebenfalls sehr gut das Plugin Better Search Replace nutzen:

Wenn du das nicht tust, kann es sein, dass Referrer nicht an das Affiliate-Programm oder -netzwerk übertragen werden.
Referrer sind für viele Advertiser wichtig, weil diese dadurch sehen können, auf welcher URL der Affiliate-Link geklickt wurde. Unter Umständen kann es sogar sein, dass Sales oder Leads nicht vergütet werden, weil der Referrer fehlt!
FAQ
Hier findest du Antworten auf häufige Fragen rund um das Thema WordPress und SSL:
Ja wird sie, wenn dein Hosting-Anbieter nur das alte HTTP/1.1-Protokoll unterstützt.
Wenn dein Hosting-Anbieter hingegen schon das neue HTTP/2-Protokoll unterstützt, wird deine Website durch Verwendung von HTTPS sogar schneller (HTTP/2 wird von den meisten Browser nur im Zusammenhang mit HTTPS unterstützt).
Das ist einfach und schnell mit diesem kostenlosen Tool von KeyCDN möglich.
Ja, gibt es. Du kannst dir viele der oberen Schritte sparen, wenn du das Plugin Really Simple SSL installierst.
Ich rate jedoch aus drei Gründen davon ab:
- Jedes zusätzliche Plugin, das du installierst, erhöht das Risiko, dass deine Website gehackt wird (die meisten Sicherheitslücken finden sich in Plugins).
- Das Plugin nimmt weder Änderungen an der Datenbank noch am Quellcode von Plugins oder Themes vor. Das heißt, es kann sein, dass du trotz der Mixed-Content-Warnungen angezeigt bekommst.
- Wenn du das Plugin deaktivierst, sind alle Änderungen wieder weg.
Also:
Nutze es lieber nur temporär, z. B. falls du im Moment keine Zeit für eine ordentliche und nachhaltige Umstellung hast.
Es kann sein, dass deine Website nach der Umstellung in einer Redirect-Schleife von HTTP zu HTTPS zurück zu HTTP zu HTTPS usw. gefangen ist.
Hier sind einige mögliche Fehlerquellen:
- Redirect-Plugins
- Login-Plugins, die die Login-URL verändern
- Security-Plugins, wie z. B. iThemes Security, über die eine Weiterleitung eingestellt wurde
- Eingefügte Redirects in der .htaccess bzw. nginx.conf
In manchen Fällen hilft auch ein erneutes Speichern der Permalinks (siehe Punkt 3 in der Anleitung).