Chevereto-free 免费版 忘记管理员密码 强制登陆 重置密码方法

我们很久之前搞了一个788图床,由于很长时间没有登录忘记了登陆密码,默认的话有重置密码的功能,但是我们没有开启mail函数,所以发送不了邮件,下面我们给出强制登陆并修改密码的方法。

强制登陆

FTP登陆到站点,编辑文件 /app/routes/route.login. (大概第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;

这样前台登陆的时候,只需要用户名正确,密码随便填写即可登录。

登陆后记得恢复原来的修改。

重置密码

使用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;

然后在后台修改密码,原始密码随便填,输入新密码即可。

修改密码后记得恢复原来的修改。

搬瓦工年付$28CN2高速线路,512M内存/500G流量/1G带宽,电信联通优化,延迟低,速度快,建站稳定,搬瓦工BandwagonHost VPS优惠BWH26FXH3HIQ点击购买】!

Vultr月付$3.5日本节点,512M内存/500G流量/1G带宽,电信联通优化,延迟低,速度快【点击购买】!

点赞
  1. juran说道:

    我在你的博客里面找到了这个,是这个么?https://www.jiloc.com/42868.html
    修改哪个配置文件?

    1. Nginx 的配置文件nginx.conf

  2. juran说道:

    晕死,我无法看到全部的内容,连接 地址看不到,麻烦你能使用 正常邮件内容回复么,谢谢哈

  3. juran说道:

    我看不到你回复的全部内容,能直接邮件么,只能看到 在配置文件里添加: # Image no...,另外你是指哪个配置文件?

    1. 这里有详细的配置方法及内容:https://chevereto.com/docs/requirements
      还不行的话可以加我们的群提问。

  4. juran说道:

    服务器是Nginx

    1. 在配置文件里添加:
      # Image not found replacement
      location ~* (jpe?g|png|gif) {
      log_not_found off;
      error_page 404 /content/images/system/default/404.gif;
      }

      # CORS header (avoids font rendering issues)
      location ~ \.(ttf|ttc|otf|eot|woff|woff2|font.css|css|js)$ {
      add_header Access-Control-Allow-Origin "*";
      }

      # Pretty URLs
      location / {
      try_files $uri $uri/ /index.php?$query_string;
      }

  5. juran说道:

    Rewrite设置了啊,原来的配置文件里也有RewriteEngine On,还有其他什么地方么

    1. 你是Apache还是Nginx ?

  6. juran说道:

    使用你这样的方式仍然提示 请求被拒绝,您没有权限访问此网页或链接已过期.
    这个是什么问题啊?

    1. 应该是你的rewrite没有配置,请看官方文档:https://chevereto.com/docs/requirements

发表评论

电子邮件地址不会被公开。 必填项已用*标注

Scroll Up