WordPress von http auf https umstellen – SSL einrichten leicht gemacht

Seit dem 25. Mai 2018 gilt die neue Datenschutz-Grundverordnung (DSGVO) der Europäischen Union. Spätestens ab diesem Stichtag ist eine SSL-Verschlüsselung für alle Formulare auf einer Website oder Onlineshops (§ 13 Abs. 7 TMG) gesetzlich vorgeschrieben.
http auf https umstellen Wordpress - SSL leicht gemacht
Foto © / Adobe Stock
Was ist SSL?

SSL steht für Secure Sockets Layer. Es handelt sich um ein Protokoll, welches sicherstellt, dass die Daten zwischen Browser und besuchter Website (https://) verschlüsselt übertragen werden.
Eine SSL-verschlüsselte Website erkennt man an dem grünen Schloss neben der URL im Browser. Eigentlich ist SSL nicht mehr der aktuelle Stand der Technik, in Version 3 wurde das Protokoll in TLS (Transport Layer Security) umbenannt. SSLv3.1 entspricht also TLSv1.1.

Warum solltest Du Deine Website von http auf https umstellen?

Table of Contents

Bevor Du mit den Änderungen auf Deiner Website startest, solltest Du vorher ein WordPress-Backup erstellen.

Schritt 1: SSL-Zertifikat erwerben und einrichten

Damit Deine Website durch SSL abgesichert werden kann, muss zuerst ein SSL-Zertifikat für Deine Domain auf dem Server eingerichtet werden. Hierfür erwirbst Du bei Deinem Hosting Provider das für Dich passende Zertifikat. Je nach Hosting Paket ist ein SSL Zertifikat inklusive oder kostet Jahresgebühr. Einige Provider, wie z. B. webgo bieten sogar eine kostenlose Verschlüsselung mit Let´s Encrypt an.  Weitere Anbieter, die Let’s Encrypt unterstützen, findest Du hier: https://community.letsencrypt.org/

SSL Zertifikate im Überblick:

SSL-Zertifikat für 1 Domain

Wenn Du das SSL Zertifikat für nur eine Domain benötigst, reicht ein Single Root Zertifikat.

SSL-Zertifikat für mehrere Domains

Mit einem Multi-Domain-Zertifikat lassen sich mehrere Domains per SSL schützen.

SSL-Zertifikat für mehrere Subdomains

Mit einem Wildcard Zertifikat profitieren verschiedene Subdomains von einer SSL-Verschlüsselung.

Let's Encrypt bei webgo einrichten:

Logge Dich in Deinem “webgo Webspace-Admin”-Bereich ein und wähle im linken Menü Paket-Verwaltung > SSL ausKlicke nun auf den grünen Button “SSL anlegen” und wähle die Domain aus, die Du umstellen möchtest. Beim SSL Modus wählst Du “Let’s Encrypt generieren” aus. Die Bit-Länge sollte 4096 Bit betragen.  Die automatisch eingefügten Häkchen kannst Du so belassen wie sie sind, die E-Mail-Adresse kann bei Bedarf geändert werden. Über den grünen Button “Anlegen” generierst Du Dein Zertifikat. Es dauert nun einen Moment, bis das Zertifikat erstellt wird. Die Zertifikate sind übrigens immer 90 Tage gültig und verlängern sich 5 Tage vor Ablauf des Zertifikates.

Schritt 2: HTTPS Umstellung in WordPress

Nachdem Du Dein SSL-Zertifikat generiert und aktiviert hast, stellst Du Deinen WordPress -Adminbereich auf HTTPS um. Füge folgende Codezeile in die wp-config.php Datei ein:

				
					define('FORCE_SSL_ADMIN', true);
				
			

Anschließend sollte der Login-Bereich verschlüsselt sein.

Schritt 3: Website Adresse ändern

Unter Einstellungen > Allgemein änderst Du nun die URL Deiner WordPress- sowie Website-Adresse, indem Du das HTTP in Deinen URLs durch HTTPS ersetzt.

Wordpress auf https umstellen

Nach dem Speichern wirst Du dazu aufgefordert, Dich erneut im WordPress-Backend einzuloggen!

Schritt 4: Permalinks aktualisieren

Um beim Abruf Deiner Beiträge keine 404-Fehler zu erhalten, solltest Du Deine Permalinks (Einstellungen > Permalinks) aktualisieren. 

Permalinks aktualisieren

Schritt 5: Alte URLs in der Datenbank ersetzen

Damit im Browser keine Mixed Content Warnung ausgegeben wird (das kleine Sicherheitsschloss neben Deiner URL), müssen noch alle internen Bilder, Links und Mediendateien auf HTTPS umgestellt werden. Es wäre allerdings viel zu aufwendig, jeden einzelnen Link manuell zu ändern. Das Plug-In “Better Search Replace” leistet hier gute Dienste.

Wenn Du mit dem Page Builder Elementor arbeitest, kannst Du die Umstellung hier vornehmen:  Elementor > Werkzeuge > URL ersetzen

URLs mit Better Search Replace in https ändern:

Unter Werkzeuge > Better Search Replace kannst Du Deine alte HTTP-URL (1) durch die neue HTTPS-URL (2) ersetzen. Markiere alle Tabellen-Einträge (3) mit STRG + A (Windows) und starte einen Testlauf, indem Du das Häkchen (4) setzt. Ist alles in Ordnung, kannst Du das Häkchen (4) entfernen und mit dem Ersetzen Deiner URLs starten (5).

URL ersetzen mit Better Search Replace

Trotz der Änderungen kann es immer noch zu Mixed Content kommen. Deshalb solltest Du noch einmal prüfen, ob alle Ressourcen und Verlinkungen auf eine sichere Verbindung umgestellt wurden:

Wenn alles korrekt funktioniert, wird überall oben in der Adressleiste das (grüne) Schloss angezeigt. Gibt es Warnhinweise, dann liegt es höchstwahrscheinlich daran, dass einzelne Elemente noch immer über http eingebunden sind. Plug-Ins wie z. B. Layer Slider und Slider Revolution führen in der Regel zu Fehlern. Stelle sicher, dass auch dort die Multimedia Elemente sicher eingebunden sind.

Ein Blick in den Seitenquelltext oder in die Entwicklertools (STRG + SHIFT + I) von Chrome oder Firefox kann bei der Suche nach ungesicherten Links helfen. Im Reiter Console werden Dir alle Fehler angezeigt. Die Website JitBit ist ebenfalls hilfreich um Fehlerquellen aufzuspüren. Das Tool crawlt die komplette Website und sucht nach unsicheren Inhalten.

Schritt 6: Weiterleitung von HTTP auf HTTPS via .htaccess

Deine Seite ist nun sowohl unter HTTP als auch unter HTTPS erreichbar, was zu Duplicate Content führt. Sie sollte jedoch ausschließlich nur noch unter HTTPS erreichbar sein, was über ein 301 Redirect erreicht wird.

Apache Server

Über Deinen FTP-Zugang lädst Du Dir die .htaccess-Datei auf Deinen PC. Diese findest Du im Hauptverzeichnis Deiner WordPress-Installation. Füge folgenden Code an oberster Stelle ein und lade die Datei wieder auf Deinen Server:

				
					<IfModule mod_headers.c>
    #Umleitung http zu https
    RewriteEngine On
    RewriteCond %{HTTPS} !=on
    RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
</IfModule>
				
			

Alternativ kannst Du noch den HST-Header aktivieren, diese Funktion legt fest, dass die Website ausschließlich per HTTPS erreichbar ist. 

				
					Header set Strict-Transport-Security "max-age=31536000; includeSubDomains;
preload" env=HTTPS
				
			

Schritt 7: Cache leeren

Abschließend sollte der Cache Deines Caching-Plugins (z. B. W3 Total Cache, WP Rocket, WP-Optimize, Autooptimize) geleert werden, damit all Deine Änderungen  auf der Live-Website übernommen werden. 

URLs bei Drittanbietern

Vergiss nicht, die URL bei Drittanbietern zu ändern. Hierzu gehören beispielsweise Google Analytics, Google Search Console, Google Ads, Facebook, Twitter, Pinterest, Instagram, Google MyBusiness, YouTube, Affiliate-Programme etc.

Nikita Kolinz
Nikita Kolinz

Facebook Page