Direkt zum Inhalt

Cookie-Einstellungen

Wählen Sie, welche Arten von Cookies Sie erlauben. Sie können Ihre Auswahl jederzeit über Cookie-Einstellungen unten auf jeder Seite ändern. Datenschutzerklärung

Notwendig

Immer aktiv

Nötig zum Einloggen, für Ihren Warenkorb und um Ihre Auswahl zu speichern. Diese sind immer aktiv.

Welche Cookies?
  • weboke_sessie, weboke_klant, weboke_remember: Ihre Sitzung und eingeloggt bleiben
  • weboke_basket: Ihr Warenkorb
  • wkBtwIncl: Preise mit oder ohne MwSt. anzeigen
  • wok_cookies: Ihre Cookie-Auswahl, 12 Monate

Misst, welche Anzeige zu einem Besuch oder einer Bestellung führt, damit wir nicht für Anzeigen zahlen, die nichts bringen.

Welche Cookies?
  • Google Ads über Google Tag Manager (_gcl_au, _gcl_aw), bis zu 90 Tage
  • OpenAI Ads, Anzeigen in ChatGPT
  • wok_aff: über welchen Partner Sie zu uns kamen (Partnerprogramm), 60 Tage

4,6

Land und Sprache

Jedes Land hat seine eigene Website, mit Preisen und MwSt. dieses Landes.

Anzeigen

Modul 3 · 3.2

Deutsch

www, Weiterleitung und gemischte Inhalte

Modul 3: Adresse, https und Benutzer · Lesezeit: 9 Minuten

Lernziel: Nach dieser Lektion können Sie eine Hauptadresse wählen, alle Varianten mit einer Weiterleitung dorthin leiten sowie gemischte Inhalte aufspüren und beheben.

Kernbegriffe: kanonische Adresse, 301 und 308, Weiterleitungskette, gemischte Inhalte (Mixed Content), Suchen und Ersetzen in der Datenbank, serialisierte Daten

Vier Adressen, eine Website

Ihre Website ist über vier Adressen erreichbar:

http://example.com
http://www.example.com
https://example.com
https://www.example.com

Für einen Besucher macht das keinen Unterschied, aber für Suchmaschinen sind es vier verschiedene Adressen mit demselben Inhalt. Auch Cookies (wie Ihr Login-Cookie) gelten pro Name: Wer sich bei www anmeldet, ist bei der Domain ohne www nicht angemeldet. Deshalb wählen Sie eine kanonische Adresse (die Hauptadresse) und leiten die anderen drei dorthin weiter.

Welche Sie wählen, ist Geschmackssache (Lektion 2.1). Wichtig ist, dass die Hauptadresse überall gleich ist: in der DNS, im Zertifikat, in Einstellungen > Allgemein (Lektion 3.1) und in den Weiterleitungen.

Weiterleiten mit einem 301, in einem Schritt

Eine Weiterleitung ist eine Antwort des Servers: "diese Seite liegt woanders". Der Browser geht dann automatisch zur neuen Adresse. Der Code gibt an, um welche Art Weiterleitung es sich handelt:

CodeBedeutungVerwendung
301Dauerhaft umgezogenDie Standardwahl für http zu https und für www zur Domain ohne www (oder umgekehrt)
308Dauerhaft, und die Methode (zum Beispiel ein Formularversand) bleibt gleichKann auch für diesen Zweck verwendet werden; Browser und Suchmaschinen behandeln ihn wie 301
302 oder 307VorübergehendNur für etwas wirklich Vorübergehendes, wie eine Wartungsseite

Eine dauerhafte Weiterleitung teilt Suchmaschinen mit, dass die neue Adresse die echte ist. Bei einer vorübergehenden behalten sie die alte Adresse im Gedächtnis.

Achten Sie auch auf die Kette. Angenommen, Ihre Hauptadresse ist https://example.com. Dann möchten Sie:

http://www.example.com   301  https://example.com/
http://example.com       301  https://example.com/
https://www.example.com  301  https://example.com/
https://example.com      200

Jede Variante gelangt in einem Schritt zur Hauptadresse. Häufig passiert jedoch Folgendes:

http://www.example.com   301  https://www.example.com/
https://www.example.com  301  https://example.com/

Das funktioniert zwar, kostet aber einen zusätzlichen Schritt (zusätzliche Wartezeit, vor allem auf dem Smartphone) und einen zusätzlichen TLS-Handshake. Schlimmer ist ein Kreislauf: Der Webserver leitet zu https weiter, WordPress leitet zurück zu http, weil die Adressen in den Einstellungen noch auf http stehen, und der Browser meldet "zu viele Weiterleitungen". Dann steuern zwei Einstellungen gegeneinander. Sorgen Sie dafür, dass nur eine Partei zu https weiterleitet (der Webserver oder das Panel) und dass die Adressen in WordPress bereits auf die Hauptadresse eingestellt sind.

WordPress leitet auch selbst weiter: Fragt jemand https://www.example.com/contact/ an, während die Website-Adresse https://example.com lautet, leitet WordPress zu https://example.com/contact/ weiter. Das funktioniert nur, wenn die Anfrage bei WordPress ankommt, also wenn der Webserver den Namen www ebenfalls auf diese Website leitet.

Gemischte Inhalte

Gemischte Inhalte (Mixed Content) bedeuten, dass eine https-Seite Bestandteile über http:// lädt: ein Bild, ein Stylesheet, ein Skript, eine Schriftart oder ein eingebettetes Video. Der Browser hält das für unsicher, weil diese Bestandteile unterwegs verändert werden könnten.

  • Skripte, Stylesheets und iframes über http werden von Browsern blockiert. Ihre Website sieht dann kaputt aus, oder eine Funktion arbeitet nicht.
  • Bilder, Audio und Video über http versuchen moderne Browser automatisch über https abzurufen; gelingt das nicht, werden sie blockiert. Das Schloss-Symbol kann dann eine Warnung anzeigen.

Wo es herkommt:

  1. Alte Links in Ihrem Inhalt: Eine Website, die früher auf http lief, hat in Tausenden Beiträgen <img src="http://example.com/wp-content/uploads/...">. WordPress speichert diese Links wörtlich in der Datenbank.
  2. Theme- oder Plugin-Einstellungen mit einer vollständigen Adresse, zum Beispiel ein Logo oder ein Hintergrund mit http://.
  3. Externe Bestandteile einer anderen Website, die nur über http erreichbar sind. Diese müssen Sie ersetzen oder entfernen.
  4. Adressen in Einstellungen > Allgemein, die noch auf http stehen (Lektion 3.1).

So finden Sie es

Öffnen Sie die Seite, drücken Sie F12 und schauen Sie in den Tab Console. Der Browser meldet jeden gemischten Inhalt mit der Adresse des Bestandteils. Oder durchsuchen Sie den Quelltext der Seite (Strg+U) nach src="http:// und href="http://. Links zu anderen Websites in gewöhnlichem Text (<a href="http://...">) ergeben keine gemischten Inhalte; es geht um Dinge, die die Seite lädt.

Suchen und Ersetzen, aber richtig

Die Lösung für alte Links in Ihrem Inhalt besteht darin, alle http://example.com in der Datenbank durch https://example.com zu ersetzen. Die Versuchung ist ein SQL-Befehl wie:

UPDATE wp_options SET option_value = REPLACE(option_value, 'http://example.com', 'https://example.com');

Tun Sie das nicht. Viele Einstellungen von Themes, Plugins und Widgets sind serialisiert gespeichert. Das sieht so aus:

s:27:"http://example.com/logo.png";

Das s:27 bedeutet: Hier folgt ein Text mit 27 Zeichen. Nach einem einfachen Ersetzen ist der Text 28 Zeichen lang (ein s kam hinzu), aber es steht immer noch 27 da. PHP kann den Wert dann nicht mehr lesen, und die Einstellung fällt stillschweigend weg: ein leeres Menü, ein verschwundenes Logo, Widgets, die fehlen.

Verwenden Sie ein Hilfsmittel, das diese Längen aktualisiert:

  • WP-CLI: zuerst prüfen, dann ausführen.
wp search-replace 'http://example.com' 'https://example.com' --all-tables --dry-run
wp search-replace 'http://example.com' 'https://example.com' --all-tables

Mit --dry-run sehen Sie, wie viele Ersetzungen pro Tabelle vorgenommen würden, ohne dass etwas geändert wird.

  • Ein Suchen-und-Ersetzen-Plugin, das serialisierte Daten unterstützt (es gibt mehrere im Plugin-Verzeichnis von wordpress.org). Entfernen Sie das Plugin danach wieder.

Erstellen Sie immer zuerst ein Backup (Lektion 8.1). Ersetzen Sie außerdem niemals etwas wie example.com ohne das vorangestellte http://: Sonst erwischen Sie auch E-Mail-Adressen und andere Texte.

In der Praxis: So sieht es in einem Panel aus

Als Beispiel verwenden wir DirectAdmin. Andere Panels verfügen über einen vergleichbaren Schalter für "immer https".

  1. Aktivieren Sie bei den Domaineinstellungen SSL mit https-Weiterleitung erzwingen (Lektion 3.1).
  2. Wählen Sie bei der Domain, ob www zur Domain ohne www führen soll oder umgekehrt (bei DirectAdmin in den Domaineinstellungen; sonst mit einer Weiterleitung über Weiterleitungen oder .htaccess).
  3. Überprüfen Sie die Kette mit dem untenstehenden Befehl oder mit den Entwicklerwerkzeugen Ihres Browsers (Tab Netzwerk, Häkchen "Protokoll beibehalten").

Zusammenfassung

  • Wählen Sie eine kanonische Adresse und leiten Sie die anderen drei Varianten mit einem 301 (oder 308) in einem Schritt dorthin.
  • Lassen Sie nur eine Partei zu https weiterleiten; sonst entsteht ein Kreislauf.
  • Gemischte Inhalte bedeuten, dass eine https-Seite Bestandteile über http lädt; die Browserkonsole zeigt, welche das sind.
  • Alte Links in der Datenbank ersetzen Sie mit wp search-replace oder einem Plugin, das serialisierte Daten versteht, niemals mit einem einfachen SQL-REPLACE.
  • Immer zuerst ein Backup und eine Testrunde.

Quiz

1. Welche Weiterleitung verwenden Sie, um http dauerhaft zu https zu leiten?



2. Nach dem Aktivieren von "immer https" meldet der Browser "zu viele Weiterleitungen". Was ist die wahrscheinlichste Ursache?



3. Warum ist UPDATE ... REPLACE(...) in SQL gefährlich für das Umwandeln von Adressen?



4. Welcher Bestandteil auf einer https-Seite blockiert der Browser immer, wenn er über http geladen wird?



Aufgabe

Aufgabe A3.2: Eine Hauptadresse und keine gemischten Inhalte. Geben Sie Ihre Domain ein. Das Programm öffnet die vier Varianten (http und https, mit und ohne www) und folgt den Weiterleitungen. Gut ist: Alle vier münden in dieselbe Adresse mit https, mit höchstens einer Weiterleitung pro Variante und nur mit dauerhaften Codes (301 oder 308). Danach liest das Programm das HTML der Startseite und sucht nach Skripten, Stylesheets, Bildern, iframes und Schriftarten, die über http:// geladen werden.

Aufgabe A3.2: Eine Hauptadresse und keine gemischten Inhalte


Was Sie eingeben und was wir finden, speichern wir nicht. Ihr Browser merkt sich Ihre Antworten und ob Sie die Aufgabe bestanden haben. Sind Sie angemeldet, speichern wir in Meine Kurse nur, dass Sie die Aufgabe (fast) richtig hatten; auch das können Sie dort löschen.

Weiterführende Informationen

Diese Artikel beschreiben die Schritte in den Panels von WebOké; in anderen Panels funktionieren sie ähnlich.

Einen Moment bitte…

Richten Sie Ihre Domains ein

Legen Sie für jede Domain die Nameserver, die Verknüpfung mit Ihrem Hosting und den künftigen Inhaber fest.

Ihre Domains werden geladen…