下面我将为你提供一个非常详细、分步的 PHPCMS 网站迁移指南,涵盖了从准备到最终测试的全过程,这个指南适用于 PHPCMS 2008、v9 等主流版本。

迁移流程总览
整个迁移过程可以概括为以下几个核心步骤:
- 准备工作:获取新服务器信息,下载必要工具。
- 源服务器操作:备份数据库和网站文件。
- 新服务器操作:上传文件、导入数据库、修改配置。
- 最终检查与测试:修改域名解析,全面测试网站功能。
第一步:准备工作
在开始之前,请确保你已经准备好以下信息:
- 源服务器信息(旧服务器):
- 网站根目录:你的 PHPCMS 文件存放的完整路径,
/home/wwwroot/yourdomain.com。 - 数据库信息:
- 数据库主机地址 (通常是
localhost或0.0.1) - 数据库名称
- 数据库用户名
- 数据库密码
- 数据库前缀 (
phpcms_)
- 数据库主机地址 (通常是
- 网站根目录:你的 PHPCMS 文件存放的完整路径,
- 新服务器信息:
- FTP/SFTP 主机地址、用户名、密码:用于上传文件。
- 数据库管理后台地址:如
phpmyadmin的链接。 - 新数据库信息:
- 数据库主机地址 (通常是
localhost或0.0.1) - 新的数据库名称 (建议使用一个新的数据库名,避免冲突)
- 新的数据库用户名和密码 (建议为新环境创建专有用户)
- 数据库主机地址 (通常是
- 新域名:如果你更换了域名。
- PHP 版本:新服务器的 PHP 版本最好与旧服务器保持一致或更高,以避免兼容性问题。
第二步:在源服务器(旧服务器)上进行备份
这是最关键的一步,请务必确保备份完整。
备份数据库
PHPCMS 使用的是 MySQL 数据库,你可以通过两种方式备份:

通过 phpMyAdmin (推荐)
- 登录到你的服务器控制面板(如 cPanel、宝塔面板等),找到并进入
phpMyAdmin。 - 在左侧列表中,找到你的 PHPCMS 数据库名称并点击它。
- 在顶部菜单栏,点击 “导出”。
- 快速导出:
- 在 “导出方法” 中,选择 “快速 – 显示仅可能的选项”。
- 在 “格式” 下拉菜单中,选择 “SQL”。
- 确保 “添加 DROP TABLE / VIEW / PROCEDURE / FUNCTION” 选项是勾选的,这可以确保在新服务器上导入时能覆盖旧表。
- 点击 “执行” 按钮。
- 浏览器会自动下载一个
.sql文件,yourdatabase_20251027.sql,请妥善保存这个文件。
使用命令行 (SSH)
如果你有 SSH 权限,可以使用 mysqldump 命令,这通常更快。
# 格式: mysqldump -u [用户名] -p [数据库名] > [备份文件名].sql # 示例: mysqldump -u phpcms_user -p phpcms_db > phpcms_backup_20251027.sql
执行后会提示你输入数据库密码,输入后命令开始执行,完成后会在当前目录生成备份文件。

备份网站文件
- 使用 FTP/SFTP 客户端(如 FileZilla、Xftp)连接到你的源服务器。
- 导航到网站的根目录(
/home/wwwroot/yourdomain.com)。 - 下载整个网站目录。
- 重要:请确保下载了所有文件和文件夹,包括隐藏文件(以 开头的文件,如
.htaccess、config.inc.php等)。 - 如果网站很大,下载可能需要一些时间。
- 重要:请确保下载了所有文件和文件夹,包括隐藏文件(以 开头的文件,如
第三步:在新服务器上部署
将备份的文件和数据恢复到新服务器。
上传网站文件
- 使用 FTP/SFTP 客户端连接到你的新服务器。
- 导航到新网站的根目录(
/www/wwwroot/yournewdomain.com)。 - 将你从旧服务器下载的所有文件和文件夹上传到这里。
- 注意:上传时请保持原有的目录结构,不要遗漏任何文件。
创建新数据库并导入数据
- 登录到新服务器的
phpMyAdmin。 - 在首页,点击 “新建” 创建一个新的数据库。
- 数据库名称:填写你准备好的新数据库名(
new_phpcms_db)。 - 排序规则:一般选择
utf8mb4_general_ci或utf8mb4_unicode_ci,以支持完整的 UTF-8 字符。
- 数据库名称:填写你准备好的新数据库名(
- 创建成功后,点击左侧的新数据库名称进入。
- 点击顶部菜单栏的 “导入”。
- 点击 “选择文件”,选择你之前从旧服务器下载的
.sql备份文件。 - 点击 “执行”,耐心等待导入完成,你会看到导入成功的提示。
修改网站配置文件
这是整个迁移过程中最核心、最容易出错的一步,你需要修改 PHPCMS 的核心配置文件,让它连接到新的数据库。
-
通过 FTP/SFTP 连接到新服务器,找到并下载以下配置文件:
caches/configs/database.php(v9 版本)config.inc.php(2008 版本)
-
用代码编辑器(如 VS Code, Sublime Text, Notepad++)打开这个文件。
-
修改数据库连接信息: 你需要找到类似下面的数组,并将其中的值替换为你新服务器的数据库信息。
对于 PHPCMS v9 (
caches/configs/database.php)<?php return array ( 'default' => array ( 'hostname' => 'localhost', // 新数据库主机地址 'database' => 'new_phpcms_db', // 新数据库名 'username' => 'new_db_user', // 新数据库用户名 'password' => 'new_db_password', // 新数据库密码 'tableprefix' => 'phpcms_', // 保持原样的数据库前缀 'charset' => 'utf8', 'type' => 'mysql', 'debug' => true, 'deploy' => 0, 'rw_separate' => false, 'master_no' => '', 'slave_no' => '', ), );对于 PHPCMS 2008 (
config.inc.php)<?php define('DB_HOST','localhost'); // 新数据库主机地址 define('DB_USER','new_db_user'); // 新数据库用户名 define('DB_PW','new_db_password'); // 新数据库密码 define('DB_NAME','new_phpcms_db'); // 新数据库名 define('DB_PRE','phpcms_'); // 保持原样的数据库前缀 define('DB_CHARSET','utf8'); -
保存文件,然后通过 FTP/SFTP 将修改后的文件重新上传到服务器上的原位置,覆盖旧文件。
第四步:最终检查与测试
网站理论上已经在新服务器上运行了,但我们还需要进行最后的调整和测试。
修改网站域名(如果域名变更)
如果你的网站域名没有变,可以跳过此步,如果变了,需要更新数据库中的域名记录。
-
登录新服务器的
phpMyAdmin。 -
选择你的 PHPCMS 数据库。
-
执行一条 SQL 语句来更新所有旧域名为新域名。请务必将
yourolddomain.com和yournewdomain.com替换为你的实际域名。-- 更新网站基本信息表 UPDATE `phpcms_site` SET `domain` = 'yournewdomain.com' WHERE `domain` = 'yourolddomain.com'; -- 更新内容中的URL,例如文章、图片等路径 -- 这一步非常重要,否则网站上的图片和链接可能还是旧域名 UPDATE `phpcms_content` SET `content` = REPLACE(`content`, 'yourolddomain.com', 'yournewdomain.com'); UPDATE `phpcms_content` SET `description` = REPLACE(`
