Tidak dapat masuk ke situs wordpress saya. reauth = 1 loop pengalihan. Ada ide tentang cara memperbaikinya?


15

Saya mengalami beberapa kesulitan masuk ke situs WordPress saya. Ketika saya mencoba mengunjungi example.com/wp-admin, saya melihat halaman kosong dan bilah url berubah menjadi:

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

Jika saya mengunjungi example.com/wp-login.php, saya hanya melihat halaman putih kosong tanpa ada perubahan pada URL.

Saya telah mengkonfirmasi ini bukan masalah dengan apa pun di mesin lokal saya karena perilaku ini berlanjut di beberapa browser dan perangkat.

Saya telah menemukan banyak posting di forum tentang masalah ini tetapi tidak ada yang menawarkan solusi yang memuaskan.

Tolong bantu karena saya sangat perlu memperbarui konten di situs.

Pembaruan: Saya mengaktifkan debugging WordPress dan melihat kesalahan berikut

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

Setiap tips tentang cara memperbaikinya akan sangat dihargai


3
Bersihkan cookie Anda.
Wyck

Kapan terakhir kali Anda bisa masuk ke WP? wp-admin redirect ke wp-login.php sudah benar. Apakah Anda mengubah sesuatu, misalnya menambahkan plugin?
user42826

Saya dapat masuk terakhir kali saya mencoba beberapa hari yang lalu. Saya memang menginstal sebuah plugin tetapi saya menghapusnya dan masalahnya tetap ada
user44754

Periksa htaccess Anda untuk memastikan itu tidak miring.
MikeNGarrett

Jika semuanya gagal, aktifkan debugging di wp-config.php define('WP_DEBUG', true);dan akses wp-admin. Anda harus dapat melihat pesan kesalahan dan mengapa itu kosong. Dugaan saya adalah kesalahan plugin jika itu berfungsi sebelumnya.
user42826

Jawaban:


10

Punya masalah yang sama ... membersihkan cookie tidak berhasil.

Apa triknya adalah masuk melalui mode penyamaran terlebih dahulu, dan kemudian saya bisa masuk secara normal.


1
Tidak yakin mengapa ini dibatalkan ... setelah menghapus session_token, saya juga menggunakan penyamaran. Saya perlu menghapus cache chrome juga, tetapi penyamaran membantu menyelesaikan masalah dengan menyoroti bagian dari masalah adalah browser. Chrome memiliki cache yang kejam dan sering menjadi pusat masalah seperti ini.
Tisch

Terpilih, itu berhasil untuk saya. Aneh.
IAmJulianAcosta

5

Ada banyak kemungkinan penyebab masalah ini. Beberapa ada hubungannya dengan database Anda. Coba aktifkan WP_DEBUG dan tafsirkan pesan kesalahan.

Dalam kasus saya sendiri (begitulah cara saya menemukan pertanyaan Anda di sini), masalahnya adalah menulis token sesi ke usermeta. Saya masuk ke PhpMyAdmin> wp_usermeta> dan menghapus meta_value untuk session_token. (Detail cerita di sini https://wordpress.org/support/topic/possible-fix-for-sudden-redirect-loop-at-wp-login-with-reauth1 )


Ini bersamaan dengan membersihkan cache browser Anda harus menjadi jawaban yang diterima.
Tisch

Saya menggunakan query seperti ini `UPDATE wp_usermeta SET meta_value = '' WHERE meta_key = 'session_tokens' AND user_id = <myuserid>;
pemain baru

Dalam kasus saya, session_tokensbahkan tidak disetel untuk pengguna saya. Atau lebih khusus, user_identah bagaimana diubah menjadi angka acak. Saya tidak tahu bagaimana itu terjadi. Jadi pastikan sebenarnya ada baris di wp_usermeta dengan user_id Anda dan meta_key = session_tokens
David

Terima kasih banyak! Saya telah mengacaukan URL situs utama saya dalam pengaturan multisite wordpress. Saya hanya dapat masuk dalam mode penyamaran - menghapus semua cookie untuk domain saya dan membersihkan cache tidak membantu. Saya dihapus nilai untuk session_tokenssatu wp_usermeta meja dan tetap masalah :) Nah saya dilakukan Pak!
Andrew

2

Ini bisa disebabkan oleh tabrakan tabel wordpress. Pengaturan define ('WP_DEBUG', true); di wp-config.php akan menunjukkan kepada Anda tabel apa yang telah crash jika ini masalahnya.


1

Saya mengatasi masalah ini dengan mendefinisikan kunci keamanan di 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',       '');

Untuk beberapa alasan mereka kosong ... Ganti string kosong dengan beberapa yang dihasilkan di sini: https://api.wordpress.org/secret-key/1.1/salt/ (terima kasih Josh Rodgers)


Bukan string kata sandi acak ... WordPress dapat membuat ulang ini untuk Anda di sini: api.wordpress.org/secret-key/1.1/salt
Josh Rodgers

Mengubah Garam Wordpress bekerja untuk saya.
Jay

Dalam kasus saya, nilai tersebut tidak kosong. haruskah saya mengubahnya dengan nilai di api.wordpress.org/secret-key/1.1/salt ?
Santosa Sandy

Mungkin, coba hapus cookie Anda, buat kembali kunci garam dan masuk lagi.
Nico Prat

1

Setiap kali Anda memiliki maju dari http://mysiteke http://mysite/, ini pasti akan terjadi. Dalam kasus saya, saya menjalankan proses httpd manajerial yang memiliki beberapa host virtual. Satu dikonfigurasi dengan demikian:

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

Mengubah "/blog"untuk "/blog/"memperbaiki masalah.


0

Saya juga memiliki masalah ini tetapi memiliki pesan yang berbeda. Setelah bekerja melalui berbagai perbaikan: htaccess, plugin berganti nama, tema diganti, memeriksa ruang kosong di wp-config.php saya masih terjebak.

Masuk ke PHPMyAdmin Saya mencoba mengoptimalkan tabel tetapi ada kesalahan yang ditolak pengguna. Ternyata database itu sendiri kebesaran dan kemudian 'diblokir' oleh shared hosting. Setelah menemukan penyebab utama (tabel log Wordfence) saya memotongnya, menunggu 30 menit dan hei presto, semuanya bekerja lagi.

Kupikir ini mungkin membantu orang lain benar-benar macet setelah mencoba setiap opsi yang disarankan lainnya!


0

Baru saja mengalami hal yang sama. Tidak beruntung dengan membersihkan cache, .htaccess, kliring sesi DB, ftp menonaktifkan plugins, dll. Saya bisa masuk dengan penyamaran Chrome. Setelah itu saya masih belum bisa masuk secara normal. Tembolok peramban saja tidak berfungsi, saya harus secara khusus menghapus semua cookie yang terkait dengan domain.

Pengaturan> Tampilkan Pengaturan Lanjut> Pengaturan Konten>

Di bawah Pengaturan Privasi, klik tombol "Pengaturan Konten"

Di bawah Cookie, klik tombol "Semua Cookie dan Data Situs"

Kemudian Cari situs web Anda dengan kata kunci di kotak pencarian: Sorot situs web Anda dan klik Hapus di keyboard Anda.

Klik Selesai dan coba masuk lagi ke situs Anda (dalam mode Normal .. mis. Keluar saja dari mode Penyamaran dengan menutup jendela)

Jika situs sudah dibuka di tab lain, Anda akan mendapatkan kesalahan cookie. tutup semua tab, buka kembali, masuk dan nikmati


0

Tak satu pun dari yang di atas bekerja untuk saya.

Setelah mengaktifkan mode debug:

define('WP_DEBUG', true);

di wp-config.php

Situs itu memberi tahu saya masalah izin dengan pengguna basis data ...

Apa yang berhasil bagi saya, adalah kembali ke pengguna basis data root (bukan pengguna 'web' dengan izin lebih sedikit).

Jelas bukan solusi jangka panjang tetapi memberi Anda sesuatu yang lain untuk dicoba yang mungkin cocok untuk Anda.


0

Saya ingin berkontribusi kepada masyarakat dan juga karena masalah ini sangat mengganggu. Tidak ada solusi yang bekerja untuk saya. Saya tidak menginstal plugin apa pun sebelum itu terjadi jadi saya pikir itu adalah bug Wordpress!

Kesalahan persis saya: Via WP debugger. Setelah layar masuk muncul layar putih dengan kesalahan ini.

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

Melalui log kesalahan apache.

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

Bagaimana saya memecahkan masalah. 1. Dalam DB saya mengedit kata sandi admin saya menjadi kata sandi teks biasa. 2. Menambahkan baris kode ini ke pluggable.php. Pada dasarnya sekarang WP mengenali kata sandi yang tidak hash. Berikut adalah ekstrak pluggable.php yang diedit

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);

... dan sedikit lebih rendah

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

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

Semoga ini bisa membantu seseorang, karena googling tidak membantu saya.


Karena semuanya berjalan lancar sampai hari ini saya harus membuat blog baru di multi install saya dan karena script perlu menambahkan pengguna dan kata sandinya, beberapa komentar diperlukan untuk sepenuhnya menghilangkan hashing kata sandi. Hanya agar kamu tahu.
user2047710


0

Saya memperbaikinya dengan menggunakan https: // untuk mengakses situs web saya alih-alih http: // dengan cara itu saya tidak mendapatkan pengalihan. https://my_website.com/admin Anda juga dapat mengubah nilai "siteurl" dan "home" di tabel opsi melalui phpmyadmin di cpanel untuk menunjuk ke https. Saya mengetahui bahwa ini bisa menjadi masalah dengan ssl tidak mengarahkan ulang dengan benar.


0

Saya mengalami masalah ini setelah memigrasi situs saya dari satu server ke yang lain. Setelah mengimpor database ke server baru, saya tidak dapat login. Di server baru saya belum SSL-amankan situs, jadi saya harus mengubah siteurl dan rumah di database.

Memperbaiki

  • Aku tetap dengan pergi ke database dan mengubah siteurl dan pulang dari https://ke http://dalam wp_options.

Ini mungkin membantu orang lain.


0

Coba hapus querystring di URL ("?" Dan semua yang ada di belakangnya) - yaitu: kunjungi wp-login.php secara langsung. Ini berhasil untuk saya. Saya mencoba mengubah kata sandi, mengubah garam, membersihkan meta_value untuk session_tokens di wp_usermeta. Tidak ada yang berhasil.

Maaf, saya tahu ini tidak membantu Anda, karena Anda mengatakan layar wp-login.php Anda berwarna putih, tetapi mungkin membantu seseorang yang menyukai saya tertarik di sini dengan tajuk utama.


0

ini terjadi pada saya ketika saya memutakhirkan situs web saya ke php v7.4. downgrade ke php 7.3 menyelesaikannya. Sayangnya, saya tidak tahu cara mempertahankan versi dan memperbaiki masalah. Semoga segera para pengembang WP akan memperbaiki masalah ini.


-1

Itu terjadi kepada saya setelah saya berubah URL situs tapi saya lupa untuk mengubah site_urldi wp_sitemeta. Lalu saya mengubah nilainya ke URL baru, dan masalah terpecahkan.


-1

Saya memperbaiki masalah saya dengan mengganti file wp-login.php dengan salah satu situs web lain tempat login berfungsi.


-2

kesalahan saya adalah karena direktif di bawah ini di file confing nginx

location ~ \.php$ {

               #fastcgi_hide_header "Set-Cookie"; # Cache page with cookie 
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.