2013-06-07 2 views
21

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

Я прочитал эту статью http://www.atwix.com/magento/reset-admin-password-mysql/, но это не работает для меня. Или может быть я не получаю это

, пожалуйста, помогите мне я новичок в Magento

+0

Вы нашли точное значение для переменной 'salt'? – RST

+0

Что вы не получаете в этой статье? – Mufaddal

+1

Я получил решение приложение/код/​​ядро ​​/ Mage/Ядро/Модель/Session/Конспект/Varien.php мы должны комментировать 89,90,91 линии –

ответ

31

Перейти к:

1 - Войдите на сайт, чтобы PhpMyAdmin.

2 - Перейти в базу данных Magento.

3 - Перейдите в таблицу admin_user и отредактируйте таблицу.

4 - введите «пароль» (который вы хотите) и выберите MD5 из раскрывающегося списка функций (Важно).

Это работает как в новейшей версии CE, так и в EE (протестировано в обеих версиях), нет необходимости в изменении файлов ядра.

+0

Я пробовал, что я думаю, что он работает после входа в систему. Я не получаю сообщение об ошибке, но страница перенаправляется на тот же логин снова, а не на административную страницу. – Yavana

+4

Если вы работаете на локальной машине с WAMP, прокомментируйте все строки, которые имеют отношение к $ cookieParams в приложении/code/core/Mage/Core/Model/Session/Abstract/Varien.php (Для меня это строки с 88 по 108 с Magento EE 1.13) –

+1

Этот метод больше не работает в новой версии magentro –

21

Это окажется хороший ресурс для чтения: http://www.magentocommerce.com/wiki/recover/resetting-admin-password

SELECT * FROM admin_user; 

Затем найдите нужное имя пользователя для изменения в приведенном списке - «admin» в этом примере. Затем, чтобы обновить пароль, введите:

UPDATE admin_user SET password=CONCAT(MD5('qXpassword'), ':qX') WHERE username='admin'; 

«QX» будет изменено на то, что вы хотите, чтобы это было и то же самое для «пароль»

+7

только для уточнения бит больше: qX будет солью, а пароль будет последним паролем. – Enrique

+1

Важно отметить, что длина хэша увеличилась между версиями 1.8 и 1.9 в CE (предположительно от 1,3 до 1,4 в EE) от 2 символов (как в приведенном выше примере) до 32 символов. – carbide20

0

Открыть PhpMyAdmin и под открытым базы данных и в соответствии с этим найдите таблицу «admin_user» и найдите свое имя пользователя в этой таблице. Удалите пароль и создайте новый хэш MD5 нового пароля и поместите его туда.

7

То, как я обычно делаю это следующим образом:

Добавить этот фрагмент где-то в шаблоне login.phtml app/design/adminhtml/default/default/template/login.phtml

Mage::getSingleton('core/session', array('name' => 'adminhtml')); 
$user = Mage::getModel('admin/user')->loadByUsername('YOUR_USERNAME'); 
$session = Mage::getSingleton('admin/session'); 
$session->setUser($user); 

Заменить «» your_username с админ именем пользователя. Перейдите на страницу входа (yourdomain.com/admin), теперь установлен сеанс администратора. Когда вы снова заходите на страницу входа в систему, вы должны автоматически войти в систему. Теперь вы можете сбросить свой пароль в system > permissions > users.

Не забудьте удалить фрагмент кода из шаблона, как только ваш вошли в систему.

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

+1

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

+0

@MilindR как будто редактирование трудно запоминающегося, неясно расположенного файла, с необходимостью знать DSL лучше? Редактирование базы данных является более интуитивным и требует меньших дополнительных знаний. – ahnbizcad

+0

@ahnbizcad "с точки зрения избежания возиться с базой данных напрямую" – Chris

0
<?php 
$pass = "12345678"; 
    $salt = "EI"; 
    echo md5($salt.$pass).":".$salt; 
?> 
Update 'admin_user' table password field with the output of above program. 

Follow below link for more information... 
[http://www.atwix.com/magento/reset-admin-password-mysql][1] 
0

Выполните приведенную ниже процедуру для сброса пароля пользователя Magento:

1) Войти в PhpMyAdmin.

2) Открыть базу данных Magento.

3) Теперь откройте «admin_user» таблица, если не установлен какой-либо префикс таблиц в то время установка Magento, или если вы установили префикс затем открыть «prefixadmin_user» Таблица.

4) Теперь в поле User password вы можете увидеть MD5 Hash преобразованный пароль. Поэтому сначала вам нужно преобразовать свой обычный текст в формат MD5 Hash и после этого скопировать пароль формата MD5 Hast и вставить его в Пароль пользователя поле под «prefixadmin_user» таблица базы данных.

0

$ date = new DateTime();

$ пароль = "b919ec4a25be3bc46c00895a0eb4f907: c20ad4d76fe97759aa27a0c99bff6710";

$ SQL = "UPDATE yourmagentoDB. admin_userpassword SET = \ 'пароль. "\', rp_token_created_at =". $ date-> getTimestamp(). "WHERE admin_user. user_id =". $ user_id;

Например, ваш пароль: frank123. Подумайте о любой строке, по крайней мере, двух бит. В моем случае я возьму свой новый пароль как «frank123» и соль будет «MD5 (12)». Затем перейдите на любой сайт-генератор md5 и сгенерируйте md5 строки «c20ad4d76fe97759aa27a0c99bff6710frank123». В моем случае md5 является «b919ec4a25be3bc46c00895a0eb4f907». Теперь отредактируйте строку таблицы с указанным выше скриптом.

как использовать FTP ниже

http://excellencemagentoblog.com/how-to-reset-magento-admin-passwor

2

Если у вас есть доступ к PhpMyAdmin, вот шаги, чтобы сбросить пароль.

Сначала откройте phpMyAdmin. Нажмите на название своей базы данных для Magento с боковой панели слева. Нажмите на вкладку SQL и введите следующую команду, чтобы текстовое поле:

UPDATE `admin_user` SET `password` = MD5('PASSWORD') WHERE `username` = 'USERNAME'; 

Вы хотите заменить капитализированные значения с правильной информацией:

Username - пользователь, пароль которого вы будете быть udpating пАРОЛЬ - новый пароль, который вы хотите использовать Например, если мое имя пользователя было администратора, и я хотел сбросить пароль 123456., я хотел бы сделать это:

UPDATE `admin_user` SET `password` = MD5('123456') WHERE `username` = 'admin'; 

Если у ou не знает имя пользователя, которого вы хотите обновить, вы можете увидеть всех пользователей, нажав на ссылку admin_user с боковой панели, а затем перейдите на вкладку «Обзор». В столбце имени пользователя есть список доступных пользователей.

0

Получить Список пользователей:

* Примечание: Добавить префикс перед именем таблицы.

SELECT * FROM admin_user; Затем, найдите имя пользователя, которое хотите изменить в приведенном списке - «admin» в этом примере.Затем, чтобы обновить пароль, введите:

UPDATE admin_user SET password=CONCAT(MD5('qXpassword'), ':qX') WHERE username='admin'; ‘qX’ would be changed to whatever you want it to be and same goes for ‘password’

Вы также можете сделать это в PhpMyAdmin, найти поле admin_user и выбрать MD5 при обновлении пароля.

Если вы хотите добавить нового пользователя admin, вы должны не только создать новую запись в таблице «admin_user», но также необходимо вставить запись в таблицу «admin_role», которая должна быть связана с пользователь в поле «user_id».

2

Чтобы сбросить пароль администратора, вам необходимо создать файл и вставить следующий код в этот файл и загрузить его в корневой каталог magento.

<?php 
require_once 'app/Mage.php'; 
umask(0); 
/* not Mage::run(); */ 
Mage::app('default'); 

## For magento1.7 or Earlier var 
//$_HASH_SALT_LENGTH = 2; 
## For magento1.8 and magento1.9 
$_HASH_SALT_LENGTH = 32; 

#Generate admin password 
$password = "admin1234"; 
echo $adminPass = Mage::helper('core')->getHash($password, $_HASH_SALT_LENGTH); 
## And reset password field in "admin_user" table 

?> 

И все, теперь вы можете войти в систему от администратора, используя этот пароль.

Для подробно о сброса пароля администратора, пожалуйста, перейдите в мой блог ссылку http://www.scriptlodge.com/how-to-reset-admin-password-in-magento/

10

В основном, когда мы устанавливаем Magento Community на нашем локальном компьютере (XAMPP, WAMPP), похоже, что мы не можем войти в администратор из бэкэнд. Система подскажет нам, что мы вводим неверный пароль, но это не правда.

Когда я придумал эту проблему, я попытался сбросить пароль, выполнив следующий метод (в SQLyog).

UPDATE admin_user 
SET password=CONCAT(MD5('qXpassword'), ':qX') 
WHERE username='admin'; 

«пароль» должен быть установлен на все, что вы хотите для вашего нового пароля, а также «QX» будет представлять собой любые случайные символы, которые вы любите.

Но мы все еще не можем войти в систему. Сначала я думал, что этот метод является неправильным методом. В то время как пароль «admin» определенно был изменен. Но почему мы все еще не можем войти?

Может быть, мы ввели правильное имя пользователя и пароль, но мы до сих пор не может войти

Используйте Notepad ++, чтобы открыть и редактировать файл ядра:. Приложение/код/​​ядро ​​/ Mage/CORE/Модель /Session/Abstract/Varien.php, в каталоге Magento и комментарии тех, кто ниже линии:

$cookieParams = array(
      'lifetime' => $cookie->getLifetime(), 
      'path'  => $cookie->getPath() //, 
      // 'domain' => $cookie->getConfigDomain(), 
      // 'secure' => $cookie->isSecure(), 
      // 'httponly' => $cookie->getHttponly() 
     ); 

и попробуйте еще раз, вы должны можете войти как администратор из внутреннего интерфейса.

Проблема: Localhost или «127.0.0.1» не являются истинными доменами, а браузеры разрешают только реальным доменам хранить файлы cookie, поэтому логин останавливается и с недопустимым именем пользователя или паролем.

+0

Молодцы! :) Работал для меня. –

+0

хороший, спасибо! – Jesse

+1

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

1

3 шагов без MySql

Для входа в Magento администратора, используя только FTP доступа немного сложнее.

Шаг 1:

открыть класс Mage_Admin_Model_User, расположенный в app\code\core\Mage\Admin\Model\User.php.

Шаг 2:

Следующая найти authenticate() функцию вокруг line no: 225.Внутри функции AUTHENTICATE этот код написан,

$this->loadByUsername($username); 

Вам нужно добавить строку return true; после этого

$this->loadByUsername($username); 
return true; 

Шаг 3:

И вот, теперь вы войти в систему в админ с помощью любого пароля. Так как мы пропустили код для проверки пароля, логина, используя любой пароль, а затем изменить пароль в админ из

System -> Permission -> Users.

+0

нет никакого «приложения /» в моем корневом каталоге linux. – ahnbizcad

+1

@ahnbizcad не в корневом каталоге linux. Посмотрите на свой корневой каталог magento –

+0

После него много кода. И конец функции имеет возврат. Idk, если это устарело. – ahnbizcad

5

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

Создайте файл с именем reset-password.php и поместить его в корень сайта:

<?php 

chdir(dirname(__FILE__)); 
require 'app/Mage.php'; 
Mage::app('admin')->setUseSessionInUrl(false); 
umask(0); 

$user = Mage::getModel('admin/user') 
    ->load('admin', 'username') 
    ->setNewPassword('mynewpassword') 
    ->save(); 

сделать запрос на /reset-password.php в вашем браузере, и в рамках Magento следует обновить пароль для admin до mynewpassword.

+0

Я понятия не имею, ГДЕ добавить этот код. Место должно указываться из корневого каталога, а также случайно принятого базового каталога, который не упоминается. – ahnbizcad

+0

, и это говорит вам, нужно ли вручную его запускать или нет? Неа. – ahnbizcad

+0

Как говорится в статье, начните с создания копии cron.php. – Saustrup

0

Самый чистый способ исправить эту проблему - сбросить установку Magento; убедитесь, что вы храните информацию о ваших учетных баз данных в безопасном месте:

  1. Удалить local.xml в приложении \ и т.д.
  2. Удалить \ вар \ содержимое кэша
  3. Удалить \ вар \ содержимое сессии
  4. Run сценарий установки в браузере с http://yourdomain/index.php
  5. Запуск первого экрана (локализации)
  6. на втором экране, включите «Пропустить Base URL Validation До следующего шага»
  7. Очистить кеш браузера и файлы cookie

Работает в 100% случаев.

3

Это решение работает для всех версий Magento.

Добавить временно это в конце index.php

$user = Mage::getModel('admin/user')->loadByUsername('your_username'); 
$user->setPassword('new_password'); 
$user->save(); 

И ваш new_password был спасен. Теперь удалите 3 строки в конце index.php.

Имейте славный день.

+0

Не работает. пароль меняется. Но логин не выполнен –

 Смежные вопросы

  • Нет связанных вопросов^_^