通过数据库直接修改(最推荐、最安全)
这是最标准也是最安全的方法,因为不涉及修改核心文件,不会影响系统稳定性。

(图片来源网络,侵删)
操作步骤:
-
准备工具:
- 一个数据库管理工具,phpMyAdmin(这是最常用的,你的虚拟主机或服务器面板里一般都有)。
- 你的网站数据库信息:主机名/数据库地址、用户名、密码、数据库名。
-
登录phpMyAdmin:
- 登录你的虚拟主机控制面板(如cPanel、Plesk等),找到phpMyAdmin并进入。
- 或者,如果你的服务器独立部署,可以直接在服务器上通过
http://你的域名/phpmyadmin访问。
-
选择正确的数据库:
- 在phpMyAdmin的左侧列表中,选择你的织梦网站所使用的那个数据库,如果你不确定是哪个,可以看看
data目录下的文件夹名称,或者检查网站配置文件/include/common.inc.php里的$cfg_dbname值。
- 在phpMyAdmin的左侧列表中,选择你的织梦网站所使用的那个数据库,如果你不确定是哪个,可以看看
-
找到
dede_admin表:- 在数据库中,找到以
dede_开头的表(如果你的前缀改过,就使用你改的前缀)。 - 找到名为
dede_admin的表,这就是存储管理员信息的表。
- 在数据库中,找到以
-
修改管理员密码:
- 点击
dede_admin表,进入数据列表。 - 找到
uid为1的那条记录(uid=1的就是超级管理员)。 - 点击该记录行的“编辑”图标(一个铅笔形状的图标)。
- 点击
-
重置密码:
- 你会看到一个表单,其中有一个字段叫
pwd。不要直接修改这个字段! - 织梦的密码是经过
md5加密后再进行特殊处理的,我们需要用织梦自身的加密算法来生成新密码。 - 找到表单底部的 “SQL” 标签页,点击它。
- 你会看到一个表单,其中有一个字段叫
-
执行SQL命令:
- 在SQL输入框中,输入以下命令(请务必将
'your_new_password'替换成你想要设置的新密码):UPDATE dede_admin SET pwd=MD5(MD5('your_new_password')) WHERE id=1; - 说明:
UPDATE dede_admin SET ... WHERE id=1;表示更新dede_admin表中id为 1 的记录。pwd=MD5(MD5('your_new_password'))是关键,织梦对密码进行了双重MD5加密,所以我们要用同样的方式来生成。- 如果你的表前缀不是
dede_,请将dede_admin修改成你的实际前缀,my_admin。
- 在SQL输入框中,输入以下命令(请务必将
-
执行并完成:
- 点击“执行”按钮。
- 如果提示成功,那么你的密码就已经重置了,现在你可以使用你设置的新密码
your_new_password登录织梦后台了。
通过找回密码功能(如果可用)
如果你的网站邮箱配置正确,并且后台开启了邮件功能,这是最方便的方法。
- 打开织梦后台登录页面:
http://你的域名/dede/login.php - 点击登录框下方的“忘记密码?”链接。
- 输入你当初注册时使用的管理员用户名和邮箱地址。
- 点击“提交”,系统会向你的邮箱发送一个重置密码的链接。
- 登录你的邮箱,找到重置邮件,点击链接,按照提示设置新密码。
缺点:
- 很多用户在安装织梦时并没有正确配置邮件发送功能,导致此方法无效。
- 如果你忘记了邮箱地址,此方法也无法使用。
修改PHP临时登录文件(不推荐,有风险)
如果以上方法都行不通,你可以尝试这个方法。注意:此方法会留下一个临时的安全后门,操作完成后务必删除!
操作步骤:
-
创建临时文件:
-
在你的电脑上,新建一个文本文件,命名为
login.php。 -
将以下代码复制并粘贴到该文件中:
<?php // 以下是你网站数据库的连接信息 $dbhost = 'localhost'; // 或你的数据库地址 $dbuser = '数据库用户名'; $dbpass = '数据库密码'; $dbname = '数据库名'; $dbprefix = 'dede_'; // 你的表前缀,如果不是dede_请修改 // 连接数据库 $link = mysqli_connect($dbhost, $dbuser, $dbpass, $dbname); if (!$link) { die('Could not connect: ' . mysqli_error()); } // 设置新密码 $new_password = '123456'; // 设置你的新密码,明文即可 $sql = "UPDATE `{$dbprefix}admin` SET `pwd`=MD5(MD5('{$new_password}')) WHERE `id`=1"; // 执行SQL if (mysqli_query($link, $sql)) { echo "密码重置成功!新密码是: {$new_password} <br>"; echo "请立即删除此文件!"; } else { echo "密码重置失败: " . mysqli_error($link); } mysqli_close($link); ?>
-
-
修改并上传文件:
- 修改代码中的数据库信息(
$dbuser,$dbpass,$dbname,$dbprefix)。 - 设置你想要的新密码(
$new_password)。 - 将修改好的
login.php文件,通过FTP或文件管理器,上传到你网站的 根目录(与index.php同级)。
- 修改代码中的数据库信息(
-
执行重置:
- 在浏览器中访问这个文件:
http://你的域名/login.php - 如果看到“密码重置成功!”的提示,说明操作成功。
- 在浏览器中访问这个文件:
-
清理现场(至关重要!):
- 立即通过FTP或文件管理器,将刚刚上传的
login.php文件从网站根目录中删除,这个文件是一个巨大的安全隐患,不删除网站将非常危险。
- 立即通过FTP或文件管理器,将刚刚上传的
-
登录:
- 现在你可以使用你设置的新密码(
123456或你自定义的密码)登录织梦后台了。
- 现在你可以使用你设置的新密码(
总结与建议
| 方法 | 优点 | 缺点 | 推荐指数 |
|---|---|---|---|
| 数据库修改 | 最安全、最标准,不影响任何文件 | 需要phpMyAdmin知识,操作稍复杂 | ★★★★★ |
| 找回密码 | 最方便,无需额外操作 | 依赖邮件功能,可能无效 | ★★★☆☆ |
| PHP临时文件 | 简单直接,无需登录数据库 | 有安全风险,操作后必须删除 | ★★☆☆☆ |
强烈建议你优先使用【方法一】,这是解决此类问题的标准流程,安全可靠,如果对数据库操作不熟悉,可以先在本地电脑上练习一下phpMyAdmin的基本操作。
希望这些方法能帮你成功找回密码!
