通过后台“找回密码”功能(最推荐,最安全)
如果你的邮箱或手机号在后台设置正确,这是最简单、最安全的方法。

(图片来源网络,侵删)
- 打开登录页面:访问你的网站后台登录地址,通常是
你的域名/dede/login.php。 - 点击“忘记密码”:在登录框下方找到“忘记密码?”或类似的链接,点击它。
- 输入信息:系统会要求你输入管理员用户名和注册邮箱(或绑定的手机号)。
- 接收邮件:如果你的邮箱设置正确,系统会发送一封包含重置密码链接的邮件到你的邮箱。
- 重置密码:点击邮件中的链接,按照提示设置一个新密码即可。
优点:
- 无需修改数据库,最安全。
- 操作简单,适合所有用户。
缺点:
- 依赖你当初后台设置的正确邮箱。
通过数据库直接修改密码(最常用,最可靠)
如果方法一不可行(比如忘了邮箱),或者服务器邮件功能有问题,那么直接修改数据库是最直接的方法。
操作前务必备份数据库! 这一步非常重要,以防操作失误导致数据丢失。

(图片来源网络,侵删)
步骤:
-
登录数据库管理工具:
- 通过你的主机控制面板(如 cPanel、Plesk)进入 phpMyAdmin。
- 或使用其他数据库管理工具(如 Navicat、MySQL Workbench)连接到你的数据库。
-
找到正确的数据库:
选择你的网站所使用的那个数据库。
-
找到管理员用户表:
(图片来源网络,侵删)- 在数据库中找到名为
#@__admin的表。#@__是织梦的默认表前缀,如果你的网站修改过前缀,请使用你自己的前缀(dede_admin)。
- 在数据库中找到名为
-
找到管理员记录:
- 点击
#@__admin表,浏览里面的数据,通常第一个记录就是超级管理员。 - 找到
userid字段为admin的那一行。
- 点击
-
修改密码:
- 点击该行记录的“编辑”按钮。
- 找到
pwd字段,这个字段存储的不是明文密码,而是经过md5加密后的字符串。 - 将
pwd字段的值修改为你想要的新密码的 MD5 值。- 如何获取 MD5 值?
- 在线工具:在网上搜索“MD5 在线加密”,输入你的新密码,网站会自动生成 MD5 值。
- PHP 代码:如果你熟悉 PHP,可以创建一个临时文件
md5.php为<?php echo md5("你的新密码"); ?>,然后在浏览器中访问这个文件,就能得到 MD5 值。
- 如何获取 MD5 值?
- 重要:在织梦
V5.7及以后的版本中,密码还可能与safecode字段有关,为了确保万无一失,建议同时将pwd和safecode字段都修改成新密码的 MD5 值,如果不确定,可以只改pwd字段。
-
保存更改:
点击“执行”或“保存”按钮,完成修改。
-
登录后台:
- 现在你可以使用你设置的新用户名(通常是
admin)和新密码登录后台了。
- 现在你可以使用你设置的新用户名(通常是
通过FTP/SFTP 修改文件(备选方法)
如果你无法访问数据库,但可以通过FTP登录你的网站服务器,可以使用这个方法。
原理:我们创建一个临时的、高权限的管理员账户,然后用这个账户登录后台,再去修改或重置原始管理员密码。
步骤:
-
找到并打开文件:
- 通过FTP工具连接到你的网站服务器。
- 找到并打开以下文件:
/dede/templets/login.htm - 这是一个模板文件,我们需要在它里面加入一段代码,以显示一个“创建新管理员”的选项。
-
修改
login.htm文件:- 在
<form>标签附近,找到合适的位置,添加以下代码:<div style="margin: 10px 0; border: 1px solid #ccc; padding: 10px; background-color: #f0f0f0;"> <p style="margin: 0; color: red;">紧急情况:忘记密码?</p> <p style="margin: 5px 0;"><a href="reset_pwd.php" style="color: blue;">点击此处创建一个临时的超级管理员账户</a></p> </div>
- 在
-
创建
reset_pwd.php文件:-
在同一个目录
/dede/下,创建一个新文件,命名为reset_pwd.php。 -
将以下代码完整复制到这个新文件中:
<?php /** * 织梦CMS忘记密码紧急修复脚本 * 请将此文件上传到 /dede/ 目录下,然后通过浏览器访问 */ require_once (dirname(__FILE__) . "/config.php"); $new_user = 'emergency_admin'; // 新用户名 $new_pwd = md5('your_new_password'); // 新密码,请替换成你想要的密码 $new_email = 'your_email@example.com'; // 新邮箱,请替换成你的邮箱 $query = "INSERT INTO `#@__admin` (`userid`, `pwd`, `uname`, `tname`, `email`, `typeid`, `logintime`, `loginip`) VALUES ('$new_user', '$new_pwd', '紧急管理员', '系统管理员', '$new_email', '0', '0', '0')"; $dsql->ExecuteNoneQuery($query); if($dsql->GetErrorNum() == 0){ echo "<h3 style='color:green;'>成功!</h3>"; echo "<p>已成功创建一个临时的超级管理员账户。</p>"; echo "<p>用户名:<strong>" . $new_user . "</strong></p>"; echo "<p>密码:<strong>your_new_password</strong> (就是你刚刚设置的密码)</p>"; echo "<p><a href='/dede/login.php'>点击这里登录后台</a></p>"; echo "<p style='color:red;'>登录成功后,请立即到“系统”->“系统用户管理”中删除这个临时账户,并将其密码修改为你自己的!</p>"; } else { echo "<h3 style='color:red;'>失败!</h3>"; echo "<p>可能该账户已存在,或数据库连接失败。</p>"; echo "<p>错误信息:" . $dsql->GetError() . "</p>"; } ?>
-
-
访问并创建新管理员:
- 在浏览器中访问
http://你的域名/dede/reset_pwd.php。 - 你会看到成功提示,并显示新创建的用户名和密码。
- 在浏览器中访问
-
登录并清理:
- 使用新创建的账户和密码登录后台。
- 最重要的一步:登录后,立即进入“系统” -> “系统用户管理”,找到这个临时的
emergency_admin账户,将其删除。 - 然后去“系统” -> “系统基本参数” -> “管理员设置”,修改原始
admin账户的密码为你最终想要使用的密码。
-
恢复文件:
- 删除临时创建的
reset_pwd.php文件。 - 将之前修改过的
login.htm文件恢复原状。
- 删除临时创建的
总结与建议
| 方法 | 优点 | 缺点 | 适用场景 |
|---|---|---|---|
| 后台找回 | 最安全,最简单 | 依赖正确的邮箱设置 | 首选方法,如果记得邮箱 |
| 数据库修改 | 最可靠,直接 | 需要数据库知识,有风险 | 方法一失败,或邮件功能不可用 |
| FTP修改文件 | 无需数据库知识,灵活 | 步骤稍多,需要FTP权限 | 无法访问数据库,但能访问网站文件 |
强烈建议:
无论使用哪种方法成功找回密码后,请检查你的网站是否存在安全漏洞,并确保你的后台管理地址没有使用默认的 /dede/,最好修改成一个不容易被猜测的目录名,以增加安全性。
