Anmeldung auf meiner WordPress-Site nicht möglich. Reauth = 1 Umleitungsschleife. Irgendwelche Ideen, wie man das behebt?


14

Ich habe Schwierigkeiten, mich bei meiner WordPress-Site anzumelden. Wenn ich versuche, example.com/wp-admin aufzurufen, wird eine leere Seite angezeigt und die URL-Leiste ändert sich in:

http://example.com/wp-login.php?redirect_to=http%3A%2F%2Fmysite.com%2Fwp-admin%2F&reauth=1

Wenn ich example.com/wp-login.php besuche, wird nur eine leere weiße Seite ohne Änderung der URL angezeigt.

Ich habe bestätigt, dass dies kein Problem mit irgendetwas auf meinem lokalen Computer ist, da das Verhalten über mehrere Browser und Geräte hinweg andauert.

Ich habe zahlreiche Forenbeiträge zu diesem Thema gefunden, aber keiner bietet eine zufriedenstellende Lösung.

Bitte helfen Sie mir, da ich den Inhalt der Website dringend aktualisieren muss.

Update: Ich habe das Debuggen von WordPress aktiviert und sehe den folgenden Fehler

Fatal error: Cannot redeclare check_password_reset_key() 
(previously declared in /home/wordpress/public_html/wp-login.php:281) 
in /home/wordpress/public_html/wp-includes/user.php on line 1637

Tipps zur Behebung dieses Problems sind jederzeit willkommen


3
Löschen Sie Ihre Cookies.
Wyck

Wann konnten Sie sich das letzte Mal bei WP anmelden? Die Umleitung von wp-admin zu wp-login.php ist korrekt. Haben Sie etwas geändert, zB ein Plugin hinzugefügt?
User42826

Ich konnte mich das letzte Mal anmelden, als ich es vor ein paar Tagen versuchte. Ich habe ein Plugin installiert, es aber gelöscht und das Problem bleibt bestehen
user44754

Überprüfen Sie Ihren Zugang, um sicherzustellen, dass es nicht wackelig ist.
MikeNGarrett

Wenn alles andere fehlschlägt, aktivieren Sie das Debugging in wp-config.php define('WP_DEBUG', true);und greifen Sie auf wp-admin zu. Sie sollten in der Lage sein, die Fehlermeldungen zu sehen und warum sie leer sind. Meine Vermutung ist ein Plugin-Fehler, wenn es zuvor funktioniert hat.
User42826

Antworten:


10

Hatte das gleiche Problem ... das Löschen der Cookies hat nicht den Trick getan.

Der Trick bestand darin , mich zuerst im Inkognito- Modus anzumelden, und dann konnte ich mich normal anmelden.


1
Ich bin mir nicht sicher, warum dies herabgestuft wird. Nachdem ich das session_token entfernt habe, habe ich auch inkognito verwendet. Ich muss auch den Chrome-Cache leeren, aber incognito hat das Problem behoben, indem ein Teil des Problems hervorgehoben wurde, der der Browser war. Chrome hat einen skrupellosen Cache und steht häufig im Mittelpunkt solcher Probleme.
Tisch

Upvoted hat es bei mir geklappt. Seltsam.
IAmJulianAcosta

5

Es gibt viele mögliche Ursachen für dieses Problem. Einige haben mit Ihrer Datenbank zu tun. Versuchen Sie, WP_DEBUG zu aktivieren und die Fehlermeldungen zu interpretieren.

In meinem Fall (so bin ich hier auf Ihre Frage gestoßen) bestand das Problem darin, ein Sitzungstoken in usermeta zu schreiben. Ich ging in PhpMyAdmin> wp_usermeta> und löschte den meta_value für session_token. (Ausführliche Geschichte hier https://wordpress.org/support/topic/possible-fix-for-sudden-redirect-loop-at-wp-login-with-reauth1 )


Dies sollte zusammen mit dem Löschen des Browser-Cache die akzeptierte Antwort sein.
Tisch

Ich habe eine Abfrage wie diese verwendet. UPDATE wp_usermeta SET meta_value = '' WHERE meta_key = 'session_tokens' AND user_id = <myuserid>;
Newman

In meinem Fall session_tokenswar nicht einmal für meinen Benutzer festgelegt. Oder genauer gesagt, das user_idwar irgendwie in eine Zufallszahl geändert worden. Ich habe keine Ahnung, wie es passiert ist. Stellen Sie also sicher, dass in wp_usermeta tatsächlich eine Zeile mit Ihrer user_id und meta_key = session_tokens
David vorhanden ist

Vielen Dank! Ich hatte meine primäre Site-URL in einem WordPress-Multisite-Setup durcheinandergebracht. Ich konnte mich nur im Inkognito-Modus anmelden. Das Löschen aller Cookies für meine Domain und das Leeren des Caches haben nicht geholfen. Ich habe den Wert für session_tokensvon der wp_usermeta Tabelle entfernt und es hat mein Problem behoben :) Gut gemacht, Sir!
Andrew

1

Dies kann durch einen Absturz der WordPress-Tabelle verursacht werden. Einstellung define ('WP_DEBUG', true); In der wp-config.php sehen Sie genau, welche Tabelle abgestürzt ist, wenn dies der Fall ist.


1

Ich habe dieses Problem gelöst, indem ich Sicherheitsschlüssel definiert habe in wp-config.php:

define('AUTH_KEY',         '');
define('SECURE_AUTH_KEY',  '');
define('LOGGED_IN_KEY',    '');
define('NONCE_KEY',        '');
define('AUTH_SALT',        '');
define('SECURE_AUTH_SALT', '');
define('LOGGED_IN_SALT',   '');
define('NONCE_SALT',       '');

Aus irgendeinem Grund waren sie leer ... Ersetzen Sie leere Zeichenfolgen durch die hier generierten: https://api.wordpress.org/secret-key/1.1/salt/ (danke Josh Rodgers)


Keine zufälligen Passwort-ähnlichen Zeichenfolgen ... WordPress kann dies hier für Sie regenerieren: api.wordpress.org/secret-key/1.1/salt
Josh Rodgers

Das Ändern von Wordpress-Salzen hat bei mir funktioniert.
Jay

In meinem Fall ist dieser Wert nicht leer. soll ich es mit dem Wert in api.wordpress.org/secret-key/1.1/salt ändern ?
Santosa Sandy

Versuchen Sie möglicherweise, Ihre Cookies zu löschen, Salt Keys zu regenerieren und sich erneut anzumelden.
Nico Prat

1

Immer wenn Sie einen Stürmer von haben http://mysite bis haben http://mysite/, muss dies passieren. In meinem Fall wird ein Verwaltungs-httpd-Prozess ausgeführt, der mehrere virtuelle Hosts enthält. Einer wurde so konfiguriert:

<VirtualHost *:*>
    ServerName mysite.com
    ProxyPass "/blog" "http://bloghtml/blog/"
    ProxyPreserveHost On
</VirtualHost>

Ändern, "/blog"um "/blog/"das Problem zu beheben.


0

Ich hatte auch dieses Problem, hatte aber eine andere Nachricht. Nachdem ich die unzähligen Fixes durchgearbeitet hatte: htaccess, umbenannte Plugins, umbenanntes Theme, auf Leerzeichen in wp-config.php überprüft, blieb ich immer noch stecken.

Anmelden bei PHPMyAdmin Ich habe versucht, Tabellen zu optimieren, habe jedoch einen vom Benutzer abgelehnten Fehler erhalten. Es stellte sich heraus, dass die Datenbank selbst übergroß war und dann vom gemeinsam genutzten Hosting "blockiert" wurde. Nachdem ich den Haupttäter gefunden hatte (eine Wordfence-Protokolltabelle), schnitt ich das ab, wartete 30 Minuten und hey presto, alles funktionierte wieder.

Dachte, dies könnte jemand anderem helfen, nachdem er jede andere vorgeschlagene Option ausprobiert hat!


0

Ging gerade das gleiche durch. Kein Glück beim Löschen des Cache, .htaccess, Löschen von DB-Sitzungen, Deaktivieren von FTP-Plugins usw. Ich konnte mich inkognito mit Chrome anmelden. Danach konnte ich mich noch nicht normal einloggen. Browser-Cache alleine hat nicht funktioniert, ich musste gezielt alle Cookies löschen, die mit der Domain zu tun haben.

Einstellungen> Erweiterte Einstellungen anzeigen> Inhaltseinstellungen>

Klicken Sie unter Datenschutzeinstellungen auf die Schaltfläche "Inhaltseinstellungen"

Klicken Sie unter "Cookies" auf die Schaltfläche "Alle Cookies und Websitedaten"

Suchen Sie dann Ihre Website anhand eines Suchbegriffs im Suchfeld: Markieren Sie Ihre Website und klicken Sie auf der Tastatur auf Löschen.

Klicken Sie auf "Fertig" und versuchen Sie erneut, sich bei Ihrer Site anzumelden (im normalen Modus). Verlassen Sie einfach den Inkognito-Modus, indem Sie das Fenster schließen.

Wenn Sie die Site bereits in einem anderen Tab geöffnet hatten, wird ein Cookie-Fehler angezeigt. Alle Tabs schließen, erneut öffnen, anmelden und genießen


0

Keines der oben genannten hat bei mir funktioniert.

Nach dem Aktivieren des Debug-Modus:

define('WP_DEBUG', true);

in der wp-config.php

Die Site hat mir Berechtigungsprobleme mit dem Datenbankbenutzer gemeldet ...

Was für mich funktioniert hat, war die Rückkehr zum Root-Datenbankbenutzer (und nicht zu einem "Web" -Benutzer mit weniger Berechtigungen).

Offensichtlich keine langfristige Lösung, sondern bietet Ihnen etwas, das Sie ausprobieren können und das möglicherweise für Sie funktioniert.


0

Ich möchte einen Beitrag zur Community leisten und auch da war dieses Problem sehr ärgerlich. Keiner der Lösungen hat bei mir funktioniert. Ich habe keine Plugins installiert, bevor es passiert ist, also denke ich definitiv, dass es ein Wordpress-Bug ist!

Meine genauen Fehler: Über WP-Debugger. Nach dem Login kam weißer Bildschirm mit diesem Fehler.

 Fatal error: Class 'PasswordHash' not found in /var/www/public_html/example.net/wp-includes/pluggable.php on line 2079

Über Apache-Fehlerprotokoll.

PHP Fatal error:  Class 'PasswordHash' not found in /var/www/public_html/example.net/wp-includes/pluggable.php on line 2138, referer: http://example.net/wp-login.php?redirect_to=http%3A%2F%2Fexample.net%2Fwp-admin%2F&reauth=1

Wie ich das Problem gelöst habe. 1. In der DB habe ich mein Administratorkennwort in Klartextkennwort geändert. 2. Diese Codezeilen wurden zu pluggable.php hinzugefügt. Grundsätzlich erkennt WP jetzt nicht gehashte Passwörter. Hier sind die bearbeiteten Auszüge von pluggable.php

function wp_check_password($password, $hash, $user_id = '') {
<------>global $wp_hasher;

<------>//20170713 Added by Stefan
<------>$check=($hash==$password);
<------>return apply_filters('check_password', $check, $password, $hash, $user_id);

... und etwas tiefer

function wp_set_password( $password, $user_id ) {
<------>global $wpdb;

<------>//$hash = wp_hash_password( $password );
<------>//20170713 Changed by Stefan
<------>$hash=$password;

Hoffe das hilft jemandem, denn googeln hat mir nicht geholfen.


Da bis heute alles reibungslos läuft, musste ich in meiner Mehrfachinstallation ein neues Blog erstellen und da das Skript einen Benutzer und sein Kennwort hinzufügen muss, waren einige weitere Kommentare erforderlich, um das Kennwort-Hashing vollständig zu beseitigen. Nur um dich wissen zu lassen.
user2047710


0

Ich behebe dies, indem ich https: // anstelle von http: // verwende, um auf meine Website zuzugreifen. Auf diese Weise habe ich keine Umleitung erhalten. https://my_website.com/admin Sie können auch die Werte für "siteurl" und "home" in der Optionstabelle über phpmyadmin im cpanel ändern, um auf ein https zu verweisen. Ich bin wachsam, dass dies ein Problem mit SSL sein könnte, das nicht richtig umleitet.


0

Ich habe dieses Problem festgestellt, nachdem ich meine Site von einem Server auf einen anderen migriert habe. Nach dem Import der Datenbank auf den neuen Server konnte ich mich nicht anmelden. Auf dem neuen Server hatte ich die Site noch nicht mit SSL gesichert, daher musste ich die Site-URL und das Startverzeichnis in der Datenbank ändern.

Fix

  • Ich habe das Problem behoben, indem ich in die Datenbank gegangen bin und die Site-URL und die Homepage von innen https://nach http://innen geändert habe wp_options.

Dies könnte anderen helfen.


0

Versuchen Sie, den Querystring in der URL ("?" Und alles dahinter) zu entfernen - das heißt: Besuchen Sie wp-login.php direkt. Es hat bei mir funktioniert. Ich habe versucht, das Passwort zu ändern, das Salt zu ändern und den meta_value für session_tokens in wp_usermeta zu löschen. Nichts davon hat funktioniert.

Entschuldigung, ich weiß, das hilft dir nicht, da du sagst, dass dein wp-login.php-Bildschirm weiß ist, aber es könnte jemandem helfen, der wie ich hier durch die Überschrift gezeichnet wurde.


-1

Es passiert mir , nachdem ich Site - URL geändert , aber ich habe vergessen zu ändern site_urlin wp_sitemeta. Dann habe ich den Wert auf die neue URL geändert und das Problem behoben.


-1

Ich habe mein Problem behoben, indem ich die Datei wp-login.php durch eine andere Website ersetzt habe, auf der der Login funktioniert hat.


-2

Mein Fehler lag an der unten stehenden Anweisung in der Nginx Confing-Datei

location ~ \.php$ {

               #fastcgi_hide_header "Set-Cookie"; # Cache page with cookie 
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.