Потерян пароль администратора

Главные вкладки

Аватар пользователя elitvinov elitvinov 6 марта 2019 в 10:52

Добрый день. Уважаемые форумчане. Необходимо зайти в админку сайта на drupal 7. Пароль утерян. Точнее его кто-то сменил и не сказал. Не могли бы ВЫ помочь, как его можно восстановить? Я не являюсь программистом, прочитал некоторую информацию, но ничего не понял. Утилит типа drush не установлено.
Отдельный вопрос. Где drupa хранит пароли? Возможно ли просто заменить файл с паролями на более раннюю версию (до его смены)?

Заранее спасибо.

Лучший ответ

Аватар пользователя ivnish ivnish 6 марта 2019 в 11:22

Если есть доступ к FTP, проще всего создать в корне файл login.php следующего содержания

<?php

define('DRUPAL_ROOT', getcwd());
require_once DRUPAL_ROOT . '/includes/bootstrap.inc';
drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL);

global $user;
$user = user_load(1);
drupal_session_regenerate();
drupal_goto('admin');

И выполнить его в браузере запустив http://вашдомен/login.php

Вас автоматом залогинит под админом

ЗЫ. Не забудьте сразу удалить этот файл

Комментарии

Аватар пользователя Orion76 Orion76 6 марта 2019 в 11:00

если есть база данных в которой еще использовался "старый" пароль, то можно найти нужную запись в БД и заменить хэш "нового" пароля на хэш из этой записи.

Но думаю, для Вас это будет сложнее, чем установить по одному из руководств drush и запустить команду:
drush uli

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

ЗЫ.. Для drupal 7 актуальная версия drush 8
http://docs.drush.org/en/8.x/install/

Аватар пользователя elitvinov elitvinov 6 марта 2019 в 11:12

если есть база данных в которой еще использовался "старый" пароль, то можно найти нужную запись в БД и заменить хэш "нового" пароля на хэш из этой записи.

Может об этом чуть подробнее? Файл есть. Что где находится и что нужно заменить...С drush что-то совсем ничего не получается.

Аватар пользователя ivnish ivnish 6 марта 2019 в 11:12

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

Самый простой способ - это заменить в таблице users хэш пароля на заведомо известный, например хэш

$S$DjqvPacZtJQUU25ghXyUCi3XnzAyiPdvM.V8Eq7xIns7Ll6JMLWr

это пароль 111

У вас ведь есть доступ на хостинг и в БД?

Аватар пользователя ivnish ivnish 6 марта 2019 в 11:22

Если есть доступ к FTP, проще всего создать в корне файл login.php следующего содержания

<?php

define('DRUPAL_ROOT', getcwd());
require_once DRUPAL_ROOT . '/includes/bootstrap.inc';
drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL);

global $user;
$user = user_load(1);
drupal_session_regenerate();
drupal_goto('admin');

И выполнить его в браузере запустив http://вашдомен/login.php

Вас автоматом залогинит под админом

ЗЫ. Не забудьте сразу удалить этот файл

Аватар пользователя elitvinov elitvinov 6 марта 2019 в 11:33

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

Аватар пользователя ivnish ivnish 6 марта 2019 в 11:40

А пароль точно верно вводите? Попробуйте что-нибудь простое типа 123456

Капча есть? Часто ставят скрытую капчу на форму входа и она может блокировать вход

Аватар пользователя elitvinov elitvinov 6 марта 2019 в 11:49

Да, пароль точно верный. В любом случае спасибо. Буду капчи проверять, может что-то настроено. Повторюсь, не программист, поэтому некоторые вещи сложно понять

Аватар пользователя elitvinov elitvinov 6 марта 2019 в 17:38

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