织梦网站迁移步骤有哪些?

99ANYc3cd6
预计阅读时长 16 分钟
位置: 首页 织梦建站 正文

下面我将为你提供一个详细、分步、且包含关键注意事项的织梦网站迁移指南,这个指南适用于将网站从一台服务器迁移到另一台服务器,或者在同一台服务器上更换域名/路径。

织梦网站如何做迁移
(图片来源网络,侵删)

核心思想

织梦迁移的核心在于同步修改三处的“地址”

  1. 数据库中的地址:网站的文章、图片、栏目等都存储在数据库里,里面包含了大量的旧域名或旧路径。
  2. 配置文件中的地址data/common.inc.php 文件存储了数据库连接信息和网站的基本配置。
  3. 网站程序文件中的地址:虽然大部分动态页面地址由数据库和配置决定,但一些静态生成的文件、模板文件或缓存文件中也可能硬编码了路径。

迁移前准备

  1. 获取新旧服务器信息

    • 旧服务器:FTP/SFTP主机、用户名、密码;数据库主机、数据库名、数据库用户名、数据库密码。
    • 新服务器:FTP/SFTP主机、用户名、密码;数据库主机、数据库名、数据库用户名、数据库密码(如果新主机没有提供,你需要先创建一个)。
    • 新旧域名:确认你的新域名,并确保它已经解析到新服务器的IP地址。
  2. 打包备份(非常重要!)

    • 备份网站程序文件:通过FTP/SFTP连接到旧服务器,将你网站的所有文件下载到本地,通常是网站根目录下的所有内容(public_htmlwww 目录)。
    • 备份数据库
      • 登录你的旧服务器空间的管理面板(如 cPanel, Plesk)。
      • 找到“数据库管理”工具(如 phpMyAdmin)。
      • 选择你的织梦数据库。
      • 点击“导出”,选择“快速”或“自定义”,格式选择“SQL”,然后执行下载,你会得到一个 .sql 文件。

强烈建议:在操作前,将备份文件(网站程序包和数据库 .sql 文件)妥善保存,以防万一。

织梦网站如何做迁移
(图片来源网络,侵删)

迁移步骤

第一步:上传网站文件到新服务器

  1. 使用FTP/SFTP工具连接到你的新服务器
  2. 将你在本地备份的整个网站程序文件上传到新服务器的网站根目录(public_html)。
  3. 确保所有文件的权限设置正确,目录权限设为 755,文件权限设为 644data 目录可能需要设置为 777755(视服务器环境而定,777 是最保险但最不安全的设置,迁移成功后改回 755)。

第二步:在新服务器上创建数据库并导入数据

  1. 登录新服务器的管理面板(如 cPanel)。
  2. 创建一个新的数据库,并记下数据库名。
  3. 创建一个新的数据库用户,并将该用户权限赋予你刚刚创建的数据库,记下数据库用户名和密码。
  4. 进入 phpMyAdmin,选择你新创建的空数据库。
  5. 点击“导入”,选择你之前备份的 .sql 文件,然后执行,等待导入完成。

第三步:修改数据库中的地址(最关键的一步)

织梦数据库中存储了大量绝对路径和域名,必须全部替换。

  1. 登录新服务器的 phpMyAdmin,选择你刚刚导入数据的那个数据库。
  2. 点击顶部的“SQL”标签,进入SQL查询页面。
  3. 执行以下 SQL 语句,将 旧域名旧路径 替换为你的 新域名新路径

SQL 替换语句模板:

-- 替换数据库中所有的旧域名为新域名
UPDATE dede_archives SET body = REPLACE(body, 'http://www.旧域名.com', 'http://www.新域名.com');
UPDATE dede_addonarticle SET body = REPLACE(body, 'http://www.旧域名.com', 'http://www.新域名.com');
UPDATE dede_arctype SET typename = REPLACE(typename, 'http://www.旧域名.com', 'http://www.新域名.com');
UPDATE dede_arctype set description = REPLACE(description, 'http://www.旧域名.com', 'http://www.新域名.com');
UPDATE dede_arctype set keywords = REPLACE(keywords, 'http://www.旧域名.com', 'http://www.新域名.com');
-- ... 其他包含内容的表,根据你的模型(如图集、软件等)进行替换
-- dede_addonsoft, dede_addonimages 等
-- 替换数据库中所有的旧路径为新路径 (如果你的网站根目录变了,比如从 /home/old 移动到 /home/new)
UPDATE dede_archives SET redirecturl = REPLACE(redirecturl, '/旧路径/', '/新路径/');
UPDATE dede_arctype set typedir = REPLACE(typedir, '/旧路径/', '/新路径/');
-- ... 其他包含路径的表
-- 替换系统配置中的站点地址
UPDATE dede_sysconfig SET value = REPLACE(value, 'http://www.旧域名.com', 'http://www.新域名.com') WHERE varname = 'cfg_basehost';

注意

  • dede_ 是织梦数据库表的前缀,如果你的网站修改了表前缀,请相应更改。
  • SQL语句是常用示例,你可能需要根据自己网站的具体情况(比如安装了哪些插件、使用了哪些附加表)来增删修改,最稳妥的方法是导出数据库,用文本编辑器的“查找替换”功能批量处理,然后再导入。

第四步:修改配置文件

  1. 通过FTP/SFTP,找到新服务器上的 /data/common.inc.php 文件。
  2. 下载并编辑它,修改以下几项信息:
<?php
//数据库连接信息
$cfg_dbhost = 'localhost'; // 数据库主机,通常是 localhost
$cfg_dbname = '你的新数据库名'; // 新数据库名
$cfg_dbuser = '你的新数据库用户名'; // 新数据库用户名
$cfg_dbpwd = '你的新数据库密码'; // 新数据库密码
$cfg_dbprefix = 'dede_'; // 数据库表前缀,确保和旧站一致
$cfg_ckpath = '/'; // Cookie 作用路径,如果网站在根目录,通常是 /
$cfg_basehost = 'http://www.新域名.com'; // 这里改成你的新域名!
$cfg_indexurl = 'http://www.新域名.com/'; // 这里也改成你的新域名!
?>
  1. 保存并上传覆盖 /data/common.inc.php 文件。

第五步:检查和修正静态文件路径

如果你的网站开启了“生成HTML”,那么文章、栏目等都是以静态文件形式存在的,这些文件内部可能也包含了旧路径。

织梦网站如何做迁移
(图片来源网络,侵删)
  1. 重新生成全站

    • 登织梦后台。
    • 进入“生成” -> “一键更新网站”。
    • 勾选“更新所有栏目HTML”、“更新所有文档HTML”等所有选项。
    • 点击“开始执行”,这一步会根据数据库中已经修正过的新域名,重新生成所有静态页面,确保它们指向正确的地址。
  2. 检查图片等附件

    有时图片路径可能没有在第三步的SQL中被完全替换,手动检查几篇旧文章,看图片是否能正常显示,如果不行,可能需要重复第三步的SQL操作,或者检查附件上传的配置。


迁移后检查与清理

  1. 前台访问:在浏览器中输入你的新域名,检查网站首页、栏目页、文章页是否正常显示,图片、CSS、JS样式是否丢失。
  2. 后台登录:访问 你的新域名/dede/,尝试用旧账号密码登录,如果失败,检查 data/common.inc.php 中的数据库信息是否正确。
  3. 功能测试:测试搜索、评论、表单提交等动态功能是否正常。
  4. 清理旧服务器:确认新网站一切正常后,再删除旧服务器上的文件和数据库,避免产生额外费用或安全风险。
  5. 恢复目录权限:将 data 目录的权限从 777 改回 755,这是服务器安全的基本要求。

常见问题与解决方案

  • 问题1:后台登录提示“验证码错误”或直接跳转到登录页。

    • 原因data 目录权限不正确,导致无法生成 safeconfig.php 等安全文件。
    • 解决:确保 data 目录权限为 755777(临时),并保证其可写。
  • 问题2:网站首页能打开,但点击栏目或文章出现404错误。

    • 原因:URL重写(伪静态)规则未正确配置,或者静态文件路径错误。
    • 解决
      1. 登录后台,进入“系统” -> “系统基本参数” -> “核心设置”,检查“是否使用伪静态”选项是否开启。
      2. 将旧服务器上的 .htaccess 文件(如果存在)复制到新服务器的根目录。
      3. 执行“第五步:重新生成全站”。
  • 问题3:图片显示不出来,但文字正常。

    • 原因:数据库中的图片路径或附件配置未更新。
    • 解决:重新执行第三步的SQL替换语句,特别是针对 body 字段的替换,检查后台“系统” -> “附件设置”中的上传目录是否正确。

遵循以上步骤,你的织梦网站迁移过程应该会比较顺利。备份是第一步,也是最关键的一步

-- 展开阅读全文 --
头像
程序设计基础基于C语言如何入门?
« 上一篇 昨天
dede客服系统插件怎么安装使用?
下一篇 » 昨天

相关文章

取消
微信二维码
支付宝二维码

目录[+]