FFrewinの細かい答えに加えて、管理者パスワードをリセットするいくつかの代替方法があります。
これらのメソッドのほとんどは、パスワードをなどの単純なものに設定することに注意してくださいadmin
。後で強力なパスワードを設定することが非常に重要です。サイトがハッキングされたと思われる理由がある場合は、Joomlaインストールへのアクセスを回復したら、管理者アクセス権を持つ他のユーザーを削除することをお勧めします。
これらのメソッドの一部は、Joomla Docsから取得されています。
代替1:Configuration.phpファイル
別のユーザー(スーパー管理者権限なし)でログインできる場合configuration.php
は、Joomlaルートディレクトリのファイルの下部に次の行を追加できます。
public $root_user='myname';
myname
パスワードを知っている任意のユーザーのユーザー名に置き換えます(作成者権限以上)。これで、このユーザーはスーパーアドミニストレーターとしてログインできるようになり、ユーザーマネージャーでユーザーを編集/追加できます。configuration.php
プロンプトが表示されたときにJoomlaに自動的に実行させるか、ファイルを手動で編集することによって、完了したらファイルから余分な行を削除することを忘れないでください。
代替策2:新しい特権管理者ユーザーを追加する
この方法を使用して、新しいスーパー管理者ユーザーを作成できます。
- phpMyAdmin(またはホスティングに応じて同様)を開き、Joomla!のデータベースを選択します。地点。
ツールバーの「SQL」ボタンを押して、選択したデータベースでSQLクエリを実行します。これにより、「データベースでSQLクエリを実行」というフィールドが表示されます。このフィールドのテキストを削除し、以下のクエリをコピーして貼り付け、[実行]ボタンをクリックしてクエリを実行し、新しい管理者ユーザーをテーブルに追加します。
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');
の2つの出現箇所jos31_
を、Joomlaのインストールで使用されている接頭辞に置き換えることを忘れないでください(これは通常、phpMyAdminで簡単に見つけられます)。
これで、ユーザー名admin2とパスワードsecretを使用してサイトにアクセスできます。ログインしたら、必ずパスワードを編集してください。
代替3:
以下のコードでPHPファイルを作成し、JOOMLAROOT / administratorディレクトリにアップロードして、ブラウザーで実行します。即座にログインし(Joomla 2.5と3の両方)、ユーザーを追加/編集できます。完了したら、必ずファイルを削除してください。そうしないと、セキュリティ上の大きな問題になります。
ツールはここにもあります: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(), "" );