Как получить контроль над установкой Drupal в моем веб-пространстве без учетных данных администратора?

1437
raven

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

Есть ли какой-нибудь способ, которым я могу взять на себя эту установку Drupal, или я должен сделать переустановку?

4

3 ответа на вопрос

6
quickcel

Хизер имеет правильную идею. Получив доступ к базе данных, вы можете изменить пароль с помощью простого запроса. Если вы хотите избавиться от шага перехода на веб-сайт MD5, вы также можете использовать встроенную функцию MySQL примерно так:

UPDATE `users` SET `pass` = MD5('mynewpassword') WHERE `uid` =1; 

Примечание. Это работает только для сайтов Drupal <= версия 6.x. Если вы используете версию 7.x, хеш MD5 не будет работать (я предполагаю, что он использует какую-то солонку). Чтобы сбросить пароль в версии 7.x, вы можете просто изменить адрес электронной почты администратора на ваш адрес электронной почты с помощью запроса, подобного следующему:

UPDATE users SET mail = 'myemail@mywebsite.com' WHERE uid = 1; 

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

Ах, я не знал, что MySql имеет встроенную функцию MD5! Я еще не работал с Drupal 7, это удобно знать. +1 Heather M 14 лет назад 0
2
Heather M

Если у вас есть доступ к базе данных напрямую (через phpMyAdmin или каким-либо другим способом), вам придется выполнить запрос, чтобы изменить пароль супер-администратора.

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

Далее войдите в свою базу данных. Вам потребуется выполнить следующий запрос к базе данных Drupal, чтобы сбросить имя пользователя и пароль администратора:

Синтаксис запроса может немного измениться, если вы не используете MySQL:

UPDATE `users` SET `name`='your login name', `pass`='your password in MD5 hash form' WHERE `uid`=1; 

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

0
Iain H.

Самый простой способ сделать это - установить drush и использовать команду drush uli. Это поможет вам получить одноразовую ссылку.

Например:

drush uli -l mydomain.com 

Вы также можете войти как конкретный пользователь с помощью:

drush uli -l mydomain.com joe_user 

Обратите внимание, что опция -l не требуется, если на вашем сайте установлен base_url.

Drush - это интерфейс командной строки для Drupal, который предоставляет несколько очень удобных возможностей. См. Https://github.com/drush-ops/drush для получения информации о получении и использовании drush.

Добро пожаловать в SuperUser. Хотя этот ответ может быть решением проблемы, из-за нехватки деталей ему трудно следовать. harrymc 10 лет назад 0

Похожие вопросы