dede管理员密码如何重置?

99ANYc3cd6
预计阅读时长 12 分钟
位置: 首页 DEDE建站 正文

⚠️ 重要提示:操作前备份!

在进行任何修改文件或数据库的操作之前,强烈建议您先备份您的网站文件和数据库,以防操作失误导致网站无法访问。

dede管理员密码重置
(图片来源网络,侵删)

使用 DedeCMS 自带的“找回密码”功能(最安全、首选)

这是最标准、最安全的方法,适用于所有版本的 DedeCMS,它会通过您当初设置的安全问题注册邮箱来验证您的身份,然后发送一个重置密码的链接到您的邮箱。

  1. 打开您的 DedeCMS 后台登录页面,http://您的域名/dede/login.php
  2. 在登录框下方,点击 “找回密码” 链接。
  3. 系统会要求您输入管理员用户名注册邮箱
  4. 输入信息后,系统会向您当初设置的安全邮箱发送一封包含重置密码链接的邮件。
  5. 登录您的邮箱,点击邮件中的链接,按照提示设置一个新的密码即可。

如果这个方法可用,请优先使用它,无需进行任何手动操作。


通过修改数据库直接重置密码(最常用)

如果方法一不可用(例如忘记邮箱、安全问题答案错误等),我们可以直接登录数据库,修改管理员密码的值,这里我们以 MD5 加密为例,因为这是 DedeCMS 最常用的加密方式。

步骤 1:获取数据库信息

登录您的网站 FTP 或主机控制面板,找到 data/common.inc.php 文件,这个文件包含了网站连接数据库的所有信息,用文本编辑器打开它,找到以下几行:

dede管理员密码重置
(图片来源网络,侵删)
$cfg_dbhost = 'localhost'; // 数据库主机
$cfg_dbuser = 'root';      // 数据库用户名
$cfg_dbpwd = 'password';   // 数据库密码
$cfg_dbname = 'dedecms';   // 数据库名
$cfg_dbprefix = 'dede_';   // 数据库表前缀 (非常重要!)

请记下这些信息,特别是 $cfg_dbname (数据库名) 和 $cfg_dbprefix (表前缀)。

步骤 2:登录数据库管理工具

使用您在步骤 1 中获取的信息,登录到数据库管理工具,常用的工具有:

  • phpMyAdmin (绝大多数虚拟主机都提供)
  • MySQL Workbench (桌面客户端)
  • Navicat for MySQL (功能强大的桌面客户端)

步骤 3:找到管理员记录

  1. 选择您在 common.inc.php 中看到的数据库名(dedecms)。
  2. 在左侧的表列表中,找到以 dede_ 开头的表,然后找到 admin 表。如果您的表前缀不是 dede_,请使用您实际的表前缀
  3. 点击 admin 表,进入数据浏览页面。

步骤 4:修改密码

admin 表中,找到 userid 字段为 admin 的那一行(如果您自定义了管理员用户名,请找到对应的行)。

  • 字段说明:
    • userid: 管理员用户名
    • pwd: 存储密码的字段
    • uname: 管理员昵称(可选)
  1. 点击该行记录的 “编辑” 按钮。
  2. 找到 pwd 字段,将其值修改为您想要的新密码的 MD5 值

如何获取新密码的 MD5 值?

您可以使用在线 MD5 加密工具,例如搜索“MD5 在线加密”,输入您的新密码,然后复制生成的 MD5 值(32位字符串)。

dede管理员密码重置
(图片来源网络,侵删)

示例: 如果您想设置新密码为 123456,您可以在网上搜索 "md5 123456",得到它的 MD5 值是 e10adc3949ba59abbe56e057f20f883e,您就将 pwd 字段的值改为这个。

  1. 点击 “执行”“Go” 保存修改。

步骤 5:清除缓存(重要!)

有时候修改后仍然无法登录,这是因为 DedeCMS 缓存了密码信息,请务必清除以下目录中的所有文件:

  • /data/cache/
  • /data/session/

您可以直接通过 FTP 删除这两个目录下的所有文件,或者登录到主机控制面板的文件管理器中进行操作。

清除缓存后,重新尝试登录后台。


通过修改 PHP 文件临时重置密码(无需数据库)

如果由于某些原因您无法登录数据库,可以创建一个临时的 PHP 文件来重置密码。

  1. 在您的电脑上新建一个文本文件,命名为 reset_pwd.php
  2. 将以下代码复制并粘贴到该文件中:
<?php
require_once 'data/common.inc.php'; // 引入数据库配置文件
// --- 请在这里修改 ---
$new_username = 'admin';       // 您想设置的管理员用户名
$new_password = '123456';       // 您想设置的新密码
// --------------------
// 连接数据库
$link = mysql_connect($cfg_dbhost, $cfg_dbuser, $cfg_dbpwd);
mysql_select_db($cfg_dbname, $link);
mysql_query("SET NAMES 'gbk'"); // 根据您的数据库编码调整,通常是 gbk 或 utf8
// 对新密码进行 MD5 加密
$pwd_md5 = md5($new_password);
// 更新 admin 表中的密码
$query = "UPDATE {$cfg_dbprefix}admin SET pwd = '$pwd_md5' WHERE userid = '$new_username'";
$result = mysql_query($query);
if ($result) {
    echo "密码重置成功!<br>";
    echo "用户名: " . $new_username . "<br>";
    echo "新密码: " . $new_password . "<br>";
    echo "请立即登录后台并删除此文件!";
} else {
    echo "密码重置失败,请检查数据库连接和表前缀是否正确。";
}
mysql_close($link);
?>
  1. 修改代码中的 $new_username 和 $new_password` 为您想要的新用户名和密码。
  2. 通过 FTP 将这个 reset_pwd.php 文件上传到您的 DedeCMS 网站根目录(与 index.php 同级)。
  3. 在浏览器中访问这个文件,http://您的域名/reset_pwd.php
  4. 页面会显示重置成功或失败的信息。
  5. 成功后,请务必立即删除 reset_pwd.php 文件! 这是为了防止安全风险。

总结与排查

  • 首选方法一:最安全,符合系统设计。
  • 方法二最常用:直接有效,但需要数据库操作权限。
  • 方法三备选:当数据库无法访问时使用,但用完必须删除文件。
  • 常见问题:如果修改后还是无法登录,99% 的情况是没有清除 /data/cache/ 目录,请务必检查。

希望这些方法能帮助您成功重置密码!

-- 展开阅读全文 --
头像
Linux下C语言编程实例如何快速上手?
« 上一篇 03-04
织梦如何修改字体大小?
下一篇 » 03-04
取消
微信二维码
支付宝二维码

目录[+]