我们很久之前搞了一个788图床,由于很长时间没有登录忘记了登陆密码,默认的话有重置密码的功能,但是我们没有开启mail函数,所以发送不了邮件,下面我们给出强制登陆并修改密码的方法。
[title]强制登陆[/title]
FTP登陆到站点,编辑文件 /app/routes/route.login.php (大概第94行),找到:
$is_login = CHV\Login::checkPassword($user_db[‘user_id’], $_POST[‘password’]);
修改为:
//$is_login = CHV\Login::checkPassword($user_db[‘user_id’], $_POST[‘password’]);
$is_login = true;
这样前台登陆的时候,只需要用户名正确,密码随便填写即可登录。
登陆后记得恢复原来的修改。
[title]重置密码[/title]
使用FTP登陆,编辑文件?/app/routes/route.setttings.php , 找到:
case 'password': if(!$is_dashboard_user) { if($user['login']['password'] && !password_verify($_POST['current-password'], $user['login']['password']['secret'])) { $input_errors['current-password'] = _s('Wrong password'); } else { if($_POST['current-password'] == $_POST['new-password']) { $input_errors['new-password'] = _s('Use a new password'); $handler::updateVar('safe_post', ['current-password' => NULL]); } } } if(!preg_match('/'.CHV\getSetting('user_password_pattern').'/', $_POST['new-password'])) { $input_errors['new-password'] = _s('Invalid password'); } if($_POST['new-password'] !== $_POST['new-password-confirm']) { $input_errors['new-password-confirm'] = _s("Passwords don't match"); } break;
修改成:
case 'password': /****** if(!$is_dashboard_user) { if($user['login']['password'] && !password_verify($_POST['current-password'], $user['login']['password']['secret'])) { $input_errors['current-password'] = _s('Wrong password'); } else { if($_POST['current-password'] == $_POST['new-password']) { $input_errors['new-password'] = _s('Use a new password'); $handler::updateVar('safe_post', ['current-password' => NULL]); } } } if(!preg_match('/'.CHV\getSetting('user_password_pattern').'/', $_POST['new-password'])) { $input_errors['new-password'] = _s('Invalid password'); } if($_POST['new-password'] !== $_POST['new-password-confirm']) { $input_errors['new-password-confirm'] = _s("Passwords don't match"); } ******/ break;
然后在后台修改密码,原始密码随便填,输入新密码即可。
修改密码后记得恢复原来的修改。