核心原则
先备份,再操作! 在进行任何修改或删除文件之前,请务必备份好所有数据,迁移过程中如果出现意外,备份是您唯一的救命稻草。

(图片来源网络,侵删)
迁移前的准备工作
-
获取源服务器的信息:
- 网站根目录路径:
/wwwroot/yourdomain.com或/home/username/public_html。 - 数据库信息:
- 数据库名称
- 数据库用户名
- 数据库密码
- 数据库主机地址 (通常是
localhost,但有时也可能是 IP 地址)
- FTP/SFTP 信息:用于下载文件。
- 网站后台登录地址:
yourdomain.com/dede/。
- 网站根目录路径:
-
准备目标服务器:
- 确保目标服务器已安装好所需环境:PHP + MySQL,版本最好与源服务器保持一致或兼容。
- 创建一个新的数据库和数据库用户,并赋予该用户对新数据库的全部权限。
- 通过 FTP/SFTP 将织梦程序上传到目标服务器的网站根目录。
详细迁移步骤
第一步:备份源网站
这是最关键的一步,包含两个部分:文件备份和数据库备份。
备份网站文件

(图片来源网络,侵删)
- 使用 FTP 客户端(如 FileZilla、Xftp)连接到源服务器。
- 下载整个网站根目录(包含
/dede/、/data/、/uploads/、/templets/等所有文件夹和文件)到你的本地电脑。 - 检查:确保下载的文件完整,特别是
/data/目录,里面包含了重要的配置文件。
备份数据库
- 登录你的源服务器数据库管理工具,最常用的是 phpMyAdmin。
- 在左侧列表中选择你的织梦数据库。
- 点击“导出”选项卡。
- 导出设置:
- 格式:选择“SQL”。
- 选项:勾选“完整插入”(这样能保留数据)和“自定义”。
- 在“自定义”下方,勾选“添加
DROP TABLE/VIEW/PROCEDURE/FUNCTION”,这样新导入时会先删除旧的表,避免冲突。 - 点击“执行”。
- 浏览器会下载一个
.sql文件,将其保存到本地电脑。
第二步:上传到目标服务器
上传网站文件
- 使用 FTP 客户端连接到目标服务器。
- 将你第一步下载到本地的所有网站文件,上传到目标服务器的网站根目录。
- 注意:如果目标服务器上已经存在一些默认文件,请将其覆盖或删除,确保
/data/目录存在。
上传数据库文件
- 将你下载的
.sql备份文件,通过 FTP 或其他方式(如 SCP)上传到目标服务器,方便下一步导入,或者,你也可以直接使用本地的.sql文件进行导入。
第三步:配置数据库
这是迁移的核心步骤,需要修改数据库连接信息。
导入数据库
- 登录目标服务器的 phpMyAdmin。
- 在左侧列表中选择你新创建的那个织梦数据库。
- 点击“导入”选项卡。
- 选择你上传到服务器的
.sql备份文件(或本地的文件)。 - 点击“执行”,等待导入完成,你应该可以在左侧看到数据库中出现了
dede_*等一系列表。
修改数据库配置文件
织梦网站连接数据库的信息存储在 /data/common.inc.php 文件中,你需要修改这个文件,使其指向目标服务器的新数据库。
- 通过 FTP 编辑器(如 FileZilla 的编辑功能)或登录服务器后台,打开目标服务器上
/data/common.inc.php文件。 - 修改以下几行代码:
//数据库连接信息 $cfg_dbhost = 'localhost'; // 数据库主机,通常是 localhost $cfg_dbname = '你的新数据库名'; // 修改为你目标服务器上创建的数据库名 $cfg_dbuser = '你的新数据库用户名'; // 修改为目标服务器的数据库用户名 $cfg_dbpwd = '你的新数据库密码'; // 修改为目标服务器的数据库密码 $cfg_dbprefix = 'dede_'; // 数据库表前缀,如果和原来一样就不用改
- 保存并关闭文件。
修正网站绝对路径(重要!) 织梦系统中很多地方都写死了网站的绝对路径,如果目标服务器的路径和源服务器不同,必须修正,否则会导致图片、链接、附件等无法显示。
-
使用织梦后台自带的SQL命令(推荐)
- 登织梦后台,进入“系统” -> “SQL命令行工具”。
- 在“运行SQL命令行”的文本框中,输入以下命令(请务必将
你的新网站地址替换成你实际的域名或路径):UPDATE dede_archives SET body=REPLACE(body, 'http://你的旧网站地址', 'http://你的新网站地址'); UPDATE dede_addonarticle SET body=REPLACE(body, 'http://你的旧网站地址', 'http://你的新网站地址'); UPDATE dede_arctype SET typelink=REPLACE(typelink, 'http://你的旧网站地址', 'http://你的新网站地址');
- 你可以根据需要增加更多的
UPDATE语句来更新其他表,如dede_soft(软件下载)、dede_downloads(下载)等。 - 点击“提交执行”。
-
直接修改数据库(如果后台无法登录)
- 使用 phpMyAdmin 登录目标数据库。
- 的表(如
dede_archives,dede_addonarticle等)执行UPDATE语句,方法同上。
第四步:设置文件权限
织梦系统需要一些目录有写入权限,才能正常生成缓存、上传文件等。
- 通过 FTP 客户端,选中以下目录和文件,将其权限设置为 755 (目录) 或 644 (文件)。
/data/目录权限必须为 777 (或 755,但 775 最保险,因为需要写入配置文件和缓存文件)。/uploads/目录权限设置为 777。/templets/目录及其子目录权限设置为 777。/special/目录权限设置为 777。/html/目录权限设置为 777。/include/目录下的config.cache.inc.php文件权限设置为 666 或 777。/dede/目录(后台目录)下的config.cache.inc.php文件权限设置为 666 或 777。
注意:为了安全,迁移完成后应将权限改回更安全的设置(如 755/644)。
第五步:验证和测试
- 访问网站前台:在浏览器中输入你的新域名,检查网站首页是否正常显示,图片、CSS、JS 是否加载正常。
- 访问网站后台:访问
你的新域名/dede/,使用原来的用户名和密码登录,检查是否能正常进入后台。 - 检查网站功能:
- 进入后台,尝试发布一篇文章,看是否能成功保存并前台显示。
- 尝试上传一张图片或附件,看是否能成功上传并显示。
- 检查所有栏目、链接是否都指向了新的地址。
常见问题与解决方法
-
问题1:网站前台打开空白,或者显示“无法连接数据库”。
- 原因:数据库信息 (
common.inc.php) 填写错误。 - 解决:重新检查
$cfg_dbhost,$cfg_dbname,$cfg_dbuser,$cfg_dbpwd是否填写正确。
- 原因:数据库信息 (
-
问题2:网站后台无法登录,提示用户名密码错误。
- 原因:后台用户信息存储在数据库的
dede_admin表中,迁移后,如果数据库表前缀被改了,或者用户数据没有正确导入,就会导致此问题。 - 解决:
- 检查数据库表前缀是否在
common.inc.php和数据库中一致。 - 如果忘记密码,可以通过 phpMyAdmin 直接修改
dede_admin表中userid字段对应的pwd字段,织梦密码是 MD5 加密的,你可以用在线 MD5 工具生成一个新密码,然后替换。
- 检查数据库表前缀是否在
- 原因:后台用户信息存储在数据库的
-
问题3:图片、链接等显示的是旧地址。
- 原因:第三步中的“修正网站绝对路径”没有做成功。
- 解决:重新执行 SQL 命令,确保旧地址被全部替换,检查数据库中相关字段的值。
-
问题4:无法上传文件或生成静态页面。
- 原因:目录权限设置不正确。
- 解决:重新检查
/data/,/uploads/,/html/等目录的权限是否为 777。
织梦网站迁移的流程可以概括为:备份 -> 上传 -> 配置 -> 修正 -> 验证。
只要严格按照这个流程操作,每一步都仔细检查,绝大多数迁移问题都可以顺利解决,祝你迁移成功!
