HTTPS in WordPress erzwingen (SEO)

Index Probeme HTTPS erzwingen Wordpress
6628a5c12b5f451199704321901fd429

HTTPS erzwingen/ umsteigen

HTTPS erzwingen? Probleme mit der Google Indexierung liegen oft an dem doppeltem Content dank HTTP– und HTTPS Versionen deiner Website. Das musst Du schnell ändern, den WordPress tut das (noch) nicht für dich automatisch.

HTTPS (Hypertext Transfer Protocol Secure) ist eine sichere Version des HTTP (Hypertext Transfer Protocol) und wurde entwickelt, um eine sichere Kommunikation über ein Computernetzwerk innerhalb eines Web-Browsers zu ermöglichen.

Das funktioniert im Grunde recht gut, aber nur solange jeder Besucher (oder Google Crawler, Spider) ein HTTPS – statt HTTP – in der aufzurufenden URL nutzt.
Da die Webseite oft ebenfalls unter HTTP erreichbar ist, kommt es zu Problemen mit dem berüchtigten Double Content, den Google überhaupt nicht gern sieht. In der Google Search Console findest Du letztendlich eine Menge nicht indexierter Webseiten.

Wie Du Deine WordPress-Installation dazu zwingst, Webseiten nur über das HTTPS-Protokoll auszuliefern – auch wenn ein Besucher oder Crawler das veraltete HTTP-Protokoll nutzt – erfährst Du auf dieser Seite.

HTTPS erzwingen in WordPress

Ein Plugin wird nicht benötigt. Nachdem Du Dir ein SSL Zertifikat zugelegt und der Domain zugewiesen hast, gehst Du in Deinen WordPress Administrationsbereich zu Einstellungen -> Allgemein. Hier ersetzt Du das HTTP durch das neue HTTPS Protokoll und alles funktioniert „wie von selbst“, ohne in der config.php oder einer anderen Datei etwas ändern zu müssen.

Wordpress Einstellungen HTTPS umstellen erzwingen

Aber wenn ein Suchmaschinen Crawler die Seite nur mit HTTP aufruft, wird ebenfalls derselbe Inhalt angezeigt und Google sieht Deine Website „doppelt“.

Wie wir das lösen? Wir schreiben in die .htaccess (im Rootverzeichnis der Domain), dass die URL „umgeschrieben“ werden soll. HTTP-Anfragen an den Browser werden in HTTPS umgeschrieben.

Zuerst eine Warnung: WordPress lädt Inhalte automatisch in einem bestimmten Bereich der .htaccess Datei. Alles, was Du in diesem „abgesteckten“ Bereich schreibst und hochlädst, wird von WordPress wieder überschrieben.

# BEGIN WordPress
# Die Anweisungen (Zeilen) zwischen „BEGIN WordPress" und „END WordPress" sind
# dynamisch generiert und sollten nur über WordPress-Filter geändert werden.
# Alle Änderungen an den Anweisungen zwischen diesen Markierungen werden überschrieben.
<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
    RewriteBase /
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
</IfModule>
# END WordPress

Hüte Dich davor, etwas in den Abschnitt BEGIN WordPress und END WordPresszu schreiben. Stattdessen setzt Du den neuen Anweisungsblock über diesen geschützten Code-Block.

HTTPS erzwingen mit .htaccess

Wenn Du WordPress zwingen möchtest, alle Anfragen an „https://“ umzuleiten, trägst du folgenden Code in Deine .htaccess ein:

<IfModule mod_headers.c>
    #Umleitung http zu https
    RewriteEngine On
    RewriteCond %{HTTPS} off
    RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
    Header set Strict-Transport-Security "max-age=15768000; includeSubDomains" env=HTTPS
</IfModule>
  • Zeile 1 prüft, ob „mod_headers“ geladen ist. Diese Apache-Server-Modul erlaubt es Daten im Header einer Website anzupassen. So können Browsern zusätzliche Funktionen zur Verfügung gestellt werden.
  • Zeile 2: Ein Kommentar.
  • Zeile 3: Aktiviert die RewriteEngine des Servers.
  • Zeile 4: „RewriteCond“ sind Bedingungen für Regeln. Diese Bedingung ist erfüllt, wenn KEIN HTTPS-Protokoll verwendet wird.
  • Zeile 5: „RewriteRule“ sind Regeln. Diese Regel bewirkt ein Umschreiben von HTTP zu HTTPS.
  • Zeile 6: Diese Funktion erzwingt die Verwendung von verschlüsselten HTTPS-Verbindungen anstelle der unsicheren HTTP-Kommunikation.

Das war es auch schon gewesen. Diesen kleinen Codeblock kopierte ich in 7 verschiedene WordPress-Installationen ein – keine Chance mehr für rein geschmuggelte HTTP-Anfragen.

Weiterführende Informationen sind auf der Website von Webtimiser zum Thema „WordPress und HTTPS“ zu finden