Не удается войти в систему, а wp-login.php перенаправляет на wp-admin%2F&reauth=1?

27 янв. 2014 г., 02:38:12
Просмотры: 112K
Голосов: 21

У меня возникли проблемы со входом в мой сайт WordPress. Когда я пытаюсь посетить example.com/wp-admin, я вижу пустую страницу, а адресная строка меняется на:

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

Если я захожу на example.com/wp-login.php, я вижу только пустую белую страницу без каких-либо изменений в URL.

Я подтвердил, что это не проблема с моим локальным компьютером, так как такое поведение сохраняется в разных браузерах и устройствах.

Я нашел множество сообщений на форумах об этой проблеме, но ни одно не предлагает удовлетворительного решения.

Пожалуйста, помогите, так как мне срочно нужно обновить контент на сайте.

Обновление: Я включил отладку WordPress и вижу следующую ошибку

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

Буду благодарен за любые подсказки по исправлению этой проблемы

8
Комментарии

Очистите ваши куки.

Wyck Wyck
27 янв. 2014 г. 02:41:37

Когда вы последний раз могли войти в WP? Перенаправление с wp-admin на wp-login.php - это нормально. Вы что-то меняли, например, устанавливали плагин?

user42826 user42826
27 янв. 2014 г. 03:15:30

Я мог войти в последний раз, когда пробовал пару дней назад. Я установил плагин, но удалил его, а проблема осталась

user44754 user44754
27 янв. 2014 г. 03:22:53

Проверьте ваш файл .htaccess, чтобы убедиться, что с ним всё в порядке.

MikeNGarrett MikeNGarrett
27 янв. 2014 г. 04:25:01

Если ничего не помогает, включите отладку в wp-config.php define('WP_DEBUG', true); и зайдите в wp-admin. Вы сможете увидеть сообщения об ошибках и понять, почему страница пустая. Скорее всего, это ошибка плагина, если ранее всё работало.

user42826 user42826
27 янв. 2014 г. 19:59:38

Возможно, вам просто нужно обновить WordPress.

The Maniac The Maniac
17 нояб. 2014 г. 23:00:35

Проблема в этом дополнительном %2f. У меня уже была такая проблема некоторое время назад, я её исправил, и теперь она снова появилась. Это происходит, когда я пытаюсь перенести свою установку WordPress на другой URL и сделал это неправильно. Я отвечу с решением, когда снова разберусь.

lmat - Reinstate Monica lmat - Reinstate Monica
25 апр. 2018 г. 21:58:32

Ничего не работало для меня, кроме этого решения. Вот ссылка, которая мне помогла. https://core.trac.wordpress.org/attachment/ticket/37071/fix-wp-login-error.patch

Amit Ray Amit Ray
23 апр. 2020 г. 17:50:17
Показать остальные 3 комментариев
Все ответы на вопрос 19
3
11

У меня была такая же проблема... очистка куков не помогла.

Что сработало — сначала залогиниться в режиме инкогнито, после чего вход в обычном режиме заработал.

10 февр. 2016 г. 12:18:11
Комментарии

Не понимаю, почему это было отклонено... после удаления session_token я также использовал режим инкогнито. Мне также нужно было очистить кэш Chrome, но инкогнито помог решить проблему, показав, что часть проблемы была в браузере.

Chrome обладает безжалостным кэшированием и часто является источником подобных проблем.

Tisch Tisch
7 мая 2016 г. 18:04:46

Проголосовал за, сработало у меня. Странно.

IAmJulianAcosta IAmJulianAcosta
3 июн. 2016 г. 02:20:55

Комбинация очистки куков для данного сайта И очистки кэша браузера (например, локальных файлов) сработала у меня... что, по сути, и делают приватные вкладки. Мне даже не пришлось очищать пользовательские сессии... в этом случае, когда вы вошли через приватную вкладку, вероятно, сессия в базе данных сбросилась, но в большинстве случаев это, наверное, не обязательно.

Jesse Nickles Jesse Nickles
1 нояб. 2020 г. 22:51:33
4

Существует множество возможных причин этой проблемы. Некоторые из них связаны с вашей базой данных. Попробуйте включить WP_DEBUG и проанализировать сообщения об ошибках.

В моём случае (именно так я наткнулся на ваш вопрос) проблема заключалась в записи токена сессии в usermeta. Я зашёл в PhpMyAdmin > wp_usermeta > и удалил значение meta_value для session_token. (Подробности здесь https://wordpress.org/support/topic/possible-fix-for-sudden-redirect-loop-at-wp-login-with-reauth1)

10 дек. 2015 г. 05:05:13
Комментарии

Это вместе с очисткой кеша браузера должно быть принятым ответом.

Tisch Tisch
7 мая 2016 г. 18:05:12

Я использовал запрос такого вида: `UPDATE wp_usermeta SET meta_value='' WHERE meta_key='session_tokens' AND user_id=<мой_идентификатор_пользователя>;

newman newman
20 янв. 2017 г. 00:00:51

В моем случае session_tokens вообще не был установлен для моего пользователя. Или, если точнее, user_id каким-то образом изменился на случайное число. Я не имею понятия, как это произошло. Поэтому убедитесь, что в wp_usermeta действительно есть строка с вашим user_id и meta_key=session_tokens.

David David
28 мар. 2019 г. 01:00:46

Огромное спасибо! Я напортачил с основным URL сайта в мультисайтовой настройке WordPress. Я мог зайти только в режиме инкогнито — удаление всех куки для моего домена и очистка кеша не помогли. Я удалил значение для session_tokens в таблице wp_usermeta, и это решило мою проблему :) Отлично сработано, сэр!

Andrew Andrew
30 дек. 2019 г. 23:16:03
0

Это может быть вызвано сбоем таблицы WordPress. Установка define('WP_DEBUG', true); в файле wp-config.php покажет вам, какая именно таблица дала сбой, если это так.

17 нояб. 2014 г. 22:56:03
0

Когда происходит перенаправление с http://mysite на http://mysite/, такая ситуация неизбежна. В моём случае работает управляющий процесс httpd с несколькими виртуальными хостами. Один из них был настроен следующим образом:

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

Изменение "/blog" на "/blog/" решает проблему.

25 апр. 2018 г. 22:02:31
4

Я решил эту проблему, определив ключи безопасности в файле 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',       '');

По какой-то причине они были пустыми... Замените пустые строки на сгенерированные здесь: https://api.wordpress.org/secret-key/1.1/salt/ (спасибо Josh Rodgers)

25 янв. 2017 г. 19:04:48
Комментарии

Не случайные строки, похожие на пароли... WordPress может сгенерировать их за вас здесь: https://api.wordpress.org/secret-key/1.1/salt/

joshmrodg joshmrodg
24 мая 2017 г. 23:51:49

Смена Wordpress Salts помогла мне.

Jay Jay
6 июн. 2017 г. 00:15:08

В моем случае эти значения не пустые. Стоит ли заменить их значениями из https://api.wordpress.org/secret-key/1.1/salt/ ?

Santosa Sandy Santosa Sandy
9 янв. 2018 г. 04:40:57

Попробуйте очистить куки, сгенерировать новые соляные ключи и войти снова.

Nico Prat Nico Prat
10 янв. 2018 г. 15:19:54
0

У меня тоже была эта проблема, но с другим сообщением. После перепробования множества исправлений: htaccess, переименование плагинов, переименование темы, проверки на наличие пустых строк в wp-config.php — я всё ещё не мог решить проблему.

Войдя в PHPMyAdmin, я попытался оптимизировать таблицы, но получил ошибку отказа в доступе пользователя. Оказалось, что сама база данных была перегружена и затем «заблокирована» хостингом. Обнаружив главного виновника (таблицу логов Wordfence), я очистил её, подождал 30 минут, и вуаля — всё снова заработало.

Думаю, это может помочь кому-то ещё, кто полностью застрял после попыток всех остальных предложенных вариантов!

31 мая 2015 г. 14:51:44
0

Это произошло со мной при обновлении моего сайта до PHP версии 7.4. Возврат к версии PHP 7.3 решил проблему. К сожалению, я не знаю, как сохранить новую версию и исправить ошибку. Надеюсь, вскоре разработчики WordPress исправят эту проблему.

6 февр. 2020 г. 11:26:35
0

Ни один из вышеперечисленных способов мне не помог.

После включения режима отладки:

define('WP_DEBUG', true);

в файле wp-config.php

Сайт сообщал о проблемах с правами доступа для пользователя базы данных...

Что сработало в моем случае — это возврат к root-пользователю базы данных (вместо пользователя 'web' с ограниченными правами).

Очевидно, это не долгосрочное решение, но оно может помочь в вашей ситуации.

3 июл. 2017 г. 15:01:59
1

Я хотел бы внести свой вклад в сообщество, а также, поскольку эта проблема была очень раздражающей. Ни одно из решений не сработало для меня. Я не устанавливал никаких плагинов до того, как это произошло, поэтому определенно считаю, что это баг WordPress!

Мои точные ошибки: Через отладчик WP. После экрана входа появлялся белый экран с этой ошибкой.

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

В логах ошибок 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

Как я решил проблему: 1. В базе данных я изменил пароль администратора на обычный текстовый пароль. 2. Добавил эти строки кода в pluggable.php. По сути, теперь WP распознает незахешированные пароли. Вот измененные фрагменты pluggable.php

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

<------>//20170713 Добавлено Стефаном
<------>$check=($hash==$password);
<------>return apply_filters('check_password', $check, $password, $hash, $user_id);

... и немного ниже

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

<------>//$hash = wp_hash_password( $password );
<------>//20170713 Изменено Стефаном
<------>$hash=$password;

Надеюсь, это поможет кому-то, потому что гугление не помогло мне.

13 июл. 2017 г. 09:44:53
Комментарии

С тех пор все работает гладко, но сегодня мне пришлось создать новый блог в моей мультиустановке, и так как скрипту необходимо добавить пользователя и его пароль, потребовалось немного больше комментирования, чтобы полностью исключить хеширование паролей. Просто чтобы вы знали.

user2047710 user2047710
24 авг. 2017 г. 21:12:06
0

У меня была та же проблема, но я не мог от нее избавиться даже после долгих попыток. Нашел ответ здесь http://www.wpbeginner.com/wp-tutorials/how-to-fix-wordpress-login-page-refreshing-and-redirecting-issue/. Оказалось, это просто проблема с куками - нужно очистить куки браузера и снова включить их, вот и все.

7 мая 2018 г. 12:18:59
0

Я решил эту проблему, используя https:// для доступа к своему сайту вместо http://. Таким образом, у меня не возникало перенаправлений. https://my_website.com/admin Вы также можете изменить значения "siteurl" и "home" в таблице options через phpmyadmin в cpanel, чтобы они указывали на https. Я заметил, что это может быть связано с неправильным перенаправлением SSL.

22 мая 2018 г. 17:00:59
0

Я столкнулся с этой проблемой после переноса моего сайта с одного сервера на другой. После импорта базы данных на новый сервер, я не мог войти в систему. На новом сервере я еще не настроил SSL-защиту сайта, поэтому мне пришлось изменить значения siteurl и home в базе данных.

Решение

  • Я исправил это, зайдя в базу данных и изменив siteurl и home с https:// на http:// в таблице wp_options.

Возможно, это поможет другим.

24 мар. 2019 г. 15:08:18
0

Попробуйте удалить строку запроса из URL (символ "?" и всё, что после него) — то есть: перейдите напрямую на wp-login.php. У меня это сработало. Я пробовал сменить пароль, изменить соли (salts), очистить meta_value для session_tokens в таблице wp_usermeta. Ничего из этого не помогло.

Извините, я знаю, что это не решает вашу проблему, так как у вас просто белый экран на wp-login.php, но, возможно, это поможет кому-то, кто, как и я, попал сюда из-за заголовка.

13 сент. 2019 г. 14:14:50
0

Только что столкнулся с той же проблемой. Ничего не помогло: очистка кеша, правка .htaccess, очистка сессий в БД, отключение плагинов через FTP и т.д. Мне удалось войти только в режиме инкогнито Chrome. После этого обычный вход всё равно не работал. Просто очистки кеша браузера оказалось недостаточно — пришлось вручную удалить все куки, связанные с доменом.

Настройки > Дополнительные настройки > Настройки контента >

В разделе "Настройки конфиденциальности" нажмите кнопку "Настройки контента"

В разделе "Cookies" нажмите кнопку "Все файлы cookie и данные сайтов"

Затем найдите свой сайт по ключевому слову в поисковой строке: Выделите свой сайт и нажмите Delete на клавиатуре.

Нажмите Готово и попробуйте снова войти на сайт (в обычном режиме, т.е. просто закройте окно в режиме инкогнито)

Если сайт уже был открыт в другой вкладке, вы получите ошибку cookie. Закройте все вкладки, откройте заново, войдите и наслаждайтесь

30 сент. 2016 г. 20:15:10
0

Эти инструкции сработали для меня => https://core.trac.wordpress.org/attachment/ticket/37071/fix-wp-login-error.patch

18 дек. 2020 г. 11:36:44
0

это может быть довольно глупо, но я решил эту проблему, проверив таблицу options, мне пришлось исправить строки с url сайта

(1, ‘siteurl’, ‘example.com’, ‘yes’),
(2, ‘home’, ‘example.com’, ‘yes’),
(3, ‘blogname’, ‘my web site’, ‘yes’),
26 февр. 2021 г. 02:59:45
0
-1

Со мной это произошло после смены URL сайта, когда я забыл изменить site_url в таблице wp_sitemeta. После того как я изменил значение на новый URL, проблема была решена.

10 нояб. 2016 г. 20:27:25
0
-1

Я решил свою проблему, заменив файл wp-login.php на аналогичный файл с другого сайта, где вход в систему работал корректно.

16 июл. 2018 г. 19:57:56
0
-2

Моя ошибка была вызвана следующей директивой в конфигурационном файле nginx

location ~ \.php$ {

               #fastcgi_hide_header "Set-Cookie"; # Кэшировать страницы с куками 
21 мая 2018 г. 21:59:34