WordPress-Login geht nicht: Weiterleitungsschleife und „Zu viele Weiterleitungen“ beheben
Login stimmt, aber WordPress schickt Sie immer wieder zur Anmeldung oder der Browser meldet „Zu viele Weiterleitungen“? So finden Sie die Ursache: Cookies, Adressen, Proxy oder Plugin.
Kurz gesagt: Landen Sie nach dem Login immer wieder auf der Anmeldeseite oder meldet der Browser „Zu viele Weiterleitungen“ (ERR_TOO_MANY_REDIRECTS), stimmen fast immer die Adressen nicht zusammen: http und https, mit und ohne www. Weitere Ursachen sind alte Cookies, ein Cache-Plugin, ein Sicherheits-Plugin oder ein Proxy wie Cloudflare. Löschen Sie zuerst die Cookies, prüfen Sie dann siteurl und home und schalten Sie notfalls per FTP die Plugins ab.
Benutzername und Passwort stimmen, WordPress meldet keinen Fehler, und trotzdem stehen Sie nach dem Klick auf „Anmelden“ wieder vor dem leeren Login-Formular. Oder der Browser bricht ganz ab, weil die Seite sich im Kreis weiterleitet. Beides ist ärgerlich, aber selten gefährlich: Ihre Inhalte sind in Ordnung, nur die Anmeldung kommt nicht durch.
Warum WordPress Sie zurückschickt
Nach dem Login setzt WordPress ein Cookie im Browser. Bei jedem weiteren Aufruf prüft WordPress dieses Cookie. Findet es keines oder passt es nicht zur Adresse, die gerade aufgerufen wird, schickt WordPress Sie zurück zum Login. Cookies gelten aber nur für eine bestimmte Adresse. Ein Cookie für https://www.ihre-domain.de gilt nicht automatisch für http://ihre-domain.de. Genau daraus entsteht die Schleife.
Schritt 1: Cookies und Cache löschen
Löschen Sie im Browser die Cookies für Ihre Domain oder testen Sie in einem privaten Fenster. Klappt der Login dort, lag es nur am Browser. Das ist der einfachste Fall und erstaunlich häufig, vor allem nach einem Umzug oder der Umstellung auf HTTPS.
Schritt 2: Die Adressen prüfen
WordPress speichert seine eigene Adresse zweimal: als „WordPress-Adresse“ (siteurl) und als „Website-Adresse“ (home). Beide müssen genau zu der Adresse passen, unter der die Seite erreichbar ist, einschließlich https und www.
Ins Backend kommen Sie ja gerade nicht. Sie können die Werte aber in der wp-config.php erzwingen. Fügen Sie oberhalb der Zeile „That's all, stop editing!“ ein:
define( 'WP_HOME', 'https://www.ihre-domain.de' );
define( 'WP_SITEURL', 'https://www.ihre-domain.de' );
Ohne Schrägstrich am Ende. Alternativ ändern Sie die Werte in phpMyAdmin in der Tabelle wp_options bei siteurl und home. Prüfen Sie außerdem, ob in der .htaccess oder beim Hoster eine Weiterleitung eingerichtet ist, die genau in die andere Richtung zeigt, etwa von www auf ohne www, während WordPress auf www steht. Dann leiten Server und WordPress sich gegenseitig im Kreis.
Schritt 3: HTTPS hinter einem Proxy
Läuft Ihre Seite hinter Cloudflare, einem Load Balancer oder einem anderen Proxy, kommt die Anfrage beim Server manchmal als http an, obwohl der Besucher https nutzt. WordPress hält die Verbindung dann für unsicher und leitet auf https um, der Proxy reicht wieder http durch, und so weiter. In der wp-config.php hilft dann, ebenfalls oberhalb von „That's all“:
if ( isset( $_SERVER['HTTP_X_FORWARDED_PROTO'] )
&& $_SERVER['HTTP_X_FORWARDED_PROTO'] === 'https' ) {
$_SERVER['HTTPS'] = 'on';
}
Bei Cloudflare sollte die SSL-Einstellung außerdem auf „Full“ oder „Full (strict)“ stehen, nicht auf „Flexible“. „Flexible“ ist eine der häufigsten Ursachen für Weiterleitungsschleifen.
Schritt 4: Plugins abschalten
Hilft das alles nicht, ist meist ein Plugin beteiligt. Typische Kandidaten:
- Sicherheits-Plugins, die die Login-Adresse verstecken, Anmeldungen nach Fehlversuchen sperren oder eine Zwei-Faktor-Anmeldung erzwingen.
- Cache-Plugins, die versehentlich die Login-Seite oder das Backend zwischenspeichern.
- Weiterleitungs- und SSL-Plugins, die zusätzlich zu Server und WordPress umleiten.
Benennen Sie per FTP den Ordner wp-content/plugins in plugins_off um und versuchen Sie den Login erneut. Klappt er, rufen Sie im Backend einmal die Seite „Plugins“ auf. Dabei deaktiviert WordPress alle Plugins, deren Ordner es nicht findet. Erst danach benennen Sie den Ordner zurück und aktivieren die Plugins einzeln, bis der Fehler wieder auftritt. Bei Sicherheits-Plugins reicht oft, nur deren Ordner umzubenennen.
Wenn das Passwort selbst nicht mehr stimmt
Funktioniert „Passwort vergessen“ nicht, weil keine E-Mail ankommt, lässt sich das Passwort in phpMyAdmin neu setzen. In der Tabelle wp_users tragen Sie beim Benutzer im Feld user_pass ein neues Passwort ein und wählen als Funktion MD5. WordPress akzeptiert das beim nächsten Login und ersetzt es durch einen sicheren Hash. Vergeben Sie danach im Profil sofort ein neues, starkes Passwort. Dass die Passwort-Mail nicht ankommt, ist übrigens ein eigenes Problem, das Sie lösen sollten. Mehr dazu in Kontaktformular sendet keine E-Mails.
Vorsicht bei unbekannten Benutzern
Fällt Ihnen in wp_users ein Administrator auf, den Sie nicht kennen, oder wurde Ihr Passwort ohne Ihr Zutun geändert, ist das kein Login-Problem, sondern ein Hinweis auf einen Hack. Dann lesen Sie zuerst WordPress gehackt? So erkennen Sie es, bevor Sie weitermachen.
Professionelle Hilfe
Ich finde heraus, wo die Weiterleitung entsteht, bringe Adressen, HTTPS, Proxy und Plugins in Einklang und prüfe danach, ob Login, Backend und Seite sauber erreichbar sind. Die WordPress-Reparatur beginnt bei 290 € netto. Tritt der Fehler nach einem Hosterwechsel auf, ist der Website-Umzug der richtige Ansprechpunkt.