Ngoài câu trả lời hay của FFrewin, đây là một vài cách khác để đặt lại mật khẩu quản trị viên.
Lưu ý
Hãy nhớ rằng hầu hết các phương thức này sẽ đặt mật khẩu của bạn thành một cái gì đó đơn giản như admin
. Điều rất quan trọng là thiết lập một mật khẩu mạnh hơn sau đó. Nếu có lý do để tin rằng trang web đã bị hack, bạn có thể muốn xóa những người dùng khác có quyền truy cập quản trị viên sau khi bạn đã khôi phục quyền truy cập vào bản cài đặt Joomla của mình.
Các phương pháp này được lấy một phần từ Joomla Docs .
Thay thế 1: tệp cấu hình.php
Nếu bạn có thể đăng nhập với một người dùng khác (không có quyền siêu quản trị viên), có thể thêm dòng này vào cuối configuration.php
tệp trong thư mục gốc Joomla của bạn:
public $root_user='myname';
Thay thế myname
bằng tên người dùng của bất kỳ người dùng nào bạn biết mật khẩu của (với quyền Tác giả hoặc cao hơn). Người dùng này giờ đây sẽ có thể đăng nhập với tư cách siêu quản trị viên và bạn có thể chỉnh sửa / thêm người dùng trong trình quản lý người dùng. Hãy nhớ xóa dòng bổ sung khỏi configuration.php
tệp của bạn khi bạn hoàn thành, bằng cách để Joomla cố gắng thực hiện tự động khi được nhắc hoặc bằng cách chỉnh sửa tệp theo cách thủ công.
Phương án 2: Thêm người dùng Super-admin mới
Một người dùng siêu quản trị viên mới có thể được tạo bằng phương pháp này:
- Mở phpMyAdmin (hoặc tương tự, tùy thuộc vào lưu trữ của bạn) và chọn cơ sở dữ liệu cho Joomla! Địa điểm.
Nhấn nút "SQL" trên thanh công cụ để chạy truy vấn SQL trên cơ sở dữ liệu đã chọn. Điều này sẽ hiển thị một trường có tên "Chạy truy vấn / truy vấn SQL trên cơ sở dữ liệu". Xóa bất kỳ văn bản nào trong trường này và sao chép và dán truy vấn sau bên dưới và nhấn nút Bắt đầu để thực hiện truy vấn và thêm người dùng Quản trị viên mới vào bảng:
INSERT INTO `jos31_users`
(`name`, `username`, `password`, `params`)
VALUES ('Administrator2', 'admin2',
'd2064d358136996bd22421584a7cb33e:trd7TvKHx6dMeoMmBVxYmg0vuXEA4199', '');
INSERT INTO `jos31_user_usergroup_map` (`user_id`,`group_id`)
VALUES (LAST_INSERT_ID(),'8');
Hãy nhớ thay thế hai lần xuất hiện jos31_
bằng tiền tố được sử dụng bởi cài đặt Joomla của bạn (điều này thường dễ dàng được phát hiện trong phpMyAdmin).
Bây giờ bạn có thể truy cập trang web của mình với tên người dùng admin2 và bí mật mật khẩu . Đảm bảo chỉnh sửa mật khẩu của bạn sau khi bạn đăng nhập.
Phương án 3:
Tạo một tệp PHP với mã bên dưới, tải nó lên thư mục JOOMLAROOT / quản trị viên của bạn và chạy nó trong trình duyệt của bạn. Nó sẽ đăng nhập bạn ngay lập tức (cả Joomla 2.5 và 3) và cho phép bạn thêm / chỉnh sửa người dùng. Nhớ xóa tệp sau khi bạn hoàn tất. Không làm như vậy sẽ đại diện cho một vấn đề bảo mật rất lớn.
Công cụ này cũng có thể được tìm thấy ở đây: http://myext.eu/en/j25-login
<?php
define('_JEXEC', 1);
define('DS', DIRECTORY_SEPARATOR);
if (file_exists(dirname(__FILE__) . '/defines.php')) {
include_once dirname(__FILE__) . '/defines.php';
}
if (!defined('_JDEFINES')) {
define('JPATH_BASE', dirname(__FILE__));
require_once JPATH_BASE.'/includes/defines.php';
}
require_once JPATH_BASE.'/includes/framework.php';
require_once JPATH_BASE.'/includes/helper.php';
require_once JPATH_BASE.'/includes/toolbar.php';
$app = JFactory::getApplication('administrator');
JPluginHelper::importPlugin('user');
$user = JUser::getInstance();
$db = JFactory::getDBO();
$q = 'SELECT u.* FROM `#__users` as u
LEFT JOIN `#__user_usergroup_map` as ug ON u.id = ug.user_id
WHERE `block` = 0 AND `activation` = 0 AND ug.group_id = 8
LIMIT 0,1';
$db->setQuery($q);
$user_tmp = $db->loadObject();
$user_tmp->guest = 0;
$user_tmp->isRoot = 1;
// $user_tmp->groups = array(8=>8);
// $user_tmp->_authGroups = array(1,8);
// $user_tmp->_authLevels = array(1,1,2,3);
// $user_tmp->gid = 1000;
foreach($user_tmp as $k=>$v){
$user->set($k,$v);
}
$session = JFactory::getSession();
$session->set('user', $user);
$app = JFactory::getApplication();
$app->checkSession();
$app->redirect( JUri::base(), "" );