使用织梦CMS自带的“忘记密码”功能(最推荐,最安全)
这是官方提供的标准流程,适用于大多数情况。

(图片来源网络,侵删)
-
访问登录页面: 打开你的浏览器,访问织梦后台登录地址,通常是
你的域名/dede/login.php。 -
找到“忘记密码”链接: 在登录界面上,找到“忘记密码?”或类似的链接,并点击它。
-
输入相关信息: 系统会要求你输入以下信息来验证你的身份:
- 用户名:你当时设置的管理员用户名。
- 管理员邮箱:你在注册或设置管理员账户时填写的电子邮箱地址。
-
接收邮件并重置:
(图片来源网络,侵删)- 如果邮箱地址正确,系统会向该邮箱发送一封包含重置密码链接的邮件。
- 登录你的邮箱,找到这封来自你网站的邮件。
- 点击邮件中的重置密码链接。
- 在打开的新页面中,输入你的新密码,并确认。
- 使用新密码登录后台即可。
如果此方法失败,可能的原因:
- 你忘记了当初设置的管理员邮箱。
- 服务器没有正确配置邮件发送功能(
mail()函数被禁用或SMTP配置错误),导致邮件无法发送。
通过数据库直接修改密码(最常用、最有效的备选方案)
如果方法一不可行,或者你忘记了邮箱,那么直接修改数据库是最终的解决方案。操作前务必备份数据库!
步骤 1:获取管理员用户ID
- 登录你的网站服务器,使用FTP或文件管理器工具。
- 找到并打开
/data/config.cache.inc.php文件。 - 在这个文件中,找到类似
$cfg_adminuser = 'admin';的行,这里的'admin'就是你的管理员用户名。$cfg_adminid的值就是你的管理员ID,通常是1。
步骤 2:登录并操作数据库
- 登录你的网站主机控制面板(如 cPanel、宝塔面板等),找到“数据库管理”工具(通常是 phpMyAdmin)。
- 选择你的织梦网站所使用的数据库。
- 在数据库中,找到名为
#@__admin的数据表(如果前缀不是#@__,请替换成你实际的前缀,dede_admin)。 - 点击“浏览”或“选择”来查看该表中的所有记录。
- 找到与你管理员用户名(如
admin)对应的那一行,记下ID字段的值(通常为1)。
步骤 3:生成新密码的MD5值
织梦的密码是经过MD5加密后存储的,我们不能直接设置明文密码,需要先将其加密。
-
在线工具:最简单的方法是使用在线MD5加密工具,在搜索引擎搜索“MD5加密”,输入你想要设置的新密码,然后复制生成的32位字符串。
(图片来源网络,侵删)- 示例:新密码
123456,MD5值为e10adc3949ba59abbe56e057f20f883e。
- 示例:新密码
-
PHP代码:如果你熟悉PHP,可以创建一个临时文件,用以下代码生成MD5值:
<?php echo md5('你的新密码'); ?>将代码中的
你的新密码替换掉,然后通过浏览器访问这个文件,就能看到MD5值。
步骤 4:更新数据库
- 回到 phpMyAdmin 的
#@__admin表。 - 点击你找到的那条记录旁边的“编辑”图标(通常是一个铅笔符号)。
- 在编辑页面,找到
pwd字段。 - 将
pwd字段原来的值,替换成你刚刚生成的新密码的 MD5值。 - 滚动到页面底部,点击“执行”或“保存”按钮。
你就可以使用新密码登录织梦后台了。
通过修改PHP文件临时重置密码(有一定风险)
如果以上方法你都遇到困难,可以尝试这个“曲线救国”的方法。
-
创建一个临时文件: 在你的电脑上创建一个新的文本文件,命名为
reset_pwd.php。 -
粘贴以下代码: 将下面的代码完整地复制并粘贴到
reset_pwd.php文件中。<?php /*----------------------------------- * 织梦CMS后台密码重置工具 * 使用方法: * 1. 将此文件上传到网站根目录 * 2. 在浏览器中访问 http://你的域名/reset_pwd.php * 3. 按照提示操作 * 4. 成功后务必删除此文件! -----------------------------------*/ // 设置你的新密码 $new_password = 'newpassword123'; // <-- 在这里修改成你想要的新密码 // 数据库配置信息 (通常在 /data/config.cache.inc.php 中可以找到) $cfg_dbhost = 'localhost'; $cfg_dbname = '你的数据库名'; $cfg_dbuser = '你的数据库用户名'; $cfg_dbpwd = '你的数据库密码'; $cfg_dbprefix = '你的数据库表前缀'; // dede_ // 连接数据库 $link = mysql_connect($cfg_dbhost, $cfg_dbuser, $cfg_dbpwd); if (!$link) { die('Could not connect to the database: ' . mysql_error()); } mysql_select_db($cfg_dbname, $link); mysql_query("SET NAMES 'utf8'"); // 生成新密码的MD5值 $pwd_md5 = md5($new_password); // 更新管理员密码 (默认用户名为 admin) $query = "UPDATE `{$cfg_dbprefix}admin` SET `pwd` = '{$pwd_md5}' WHERE `userid` = 'admin'"; $result = mysql_query($query); if ($result) { echo "<h1>密码重置成功!</h1>"; echo "<p>管理员 'admin' 的新密码已设置为: <strong>{$new_password}</strong></p>"; echo "<p>请立即登录后台并修改一个更安全的密码!</p>"; echo "<p>操作完成后,请务必从服务器上删除 reset_pwd.php 文件!</p>"; } else { echo "<h1>密码重置失败!</h1>"; echo "<p>请检查数据库配置信息是否正确。</p>"; } mysql_close($link); ?> -
修改代码中的配置:
- 将
$new_password = 'newpassword123';修改成你想要设置的新密码。 - 将下面的数据库配置信息(
$cfg_dbname,$cfg_dbuser,$cfg_dbpwd,$cfg_dbprefix)修改成你自己的,这些信息可以在你主机的数据库管理页面或/data/config.cache.inc.php文件中找到。
- 将
-
上传并访问:
- 通过FTP将修改好的
reset_pwd.php文件上传到你的网站根目录(与index.php同级)。 - 在浏览器中访问
http://你的域名/reset_pwd.php。 - 如果看到“密码重置成功!”的提示,说明操作成功了。
- 通过FTP将修改好的
-
清理:
- 最重要的一步! 立即通过FTP删除你上传的
reset_pwd.php文件,以免留下安全隐患。
- 最重要的一步! 立即通过FTP删除你上传的
总结与建议
| 方法 | 优点 | 缺点 | 适用场景 |
|---|---|---|---|
| 忘记密码功能 | 安全、官方、简单 | 依赖邮件服务器功能 | 邮箱记得住且邮件功能正常 |
| 数据库修改 | 最可靠、最通用 | 需要数据库操作知识,有一定风险 | 方法一失败,或忘记邮箱时 |
| PHP文件重置 | 操作直观,无需手动算MD5 | 需要临时上传文件,有安全风险 | 前两种方法都无法使用时 |
强烈建议:
- 定期备份:养成定期备份网站文件和数据库的好习惯,这样即使出现问题也能快速恢复。
- 记录密码:使用密码管理器来安全地存储和管理你的所有网站密码。
- 修改默认用户名:如果不是必须,将默认管理员用户名
admin修改成其他更复杂的名称,可以增加安全性。
