下面我将为你提供一个详细、完整、分步的 CPanel 网站搬家指南,涵盖了从准备到收尾的每一个环节,并包含了一些进阶技巧和常见问题解答。

(图片来源网络,侵删)
核心思想
CPanel 网站搬家的核心主要有三部分:
- 备份数据 (从旧主机):将你网站的所有文件和数据库完整地下载下来。
- 上传数据 (到新主机):将备份的文件和数据库上传到新的主机空间。
- 更新配置 (在新主机):修改网站配置文件,使其指向新的数据库信息。
幸运的是,CPanel 提供了非常方便的工具,可以大大简化这个过程。
使用 CPanel 自带的“迁移器” (推荐)
这是最简单、最直接的方法,强烈推荐新手用户优先使用,它通过一个插件,在后台自动完成大部分工作。
优点:
- 自动化:只需在旧主机和新主机上点击几下,即可完成大部分操作。
- 完整:通常会同步文件、数据库、电子邮件账户等。
- 安全:通过 API 密钥进行连接,比 FTP 更安全。
缺点:
- 新旧主机必须都支持:你的新主机服务商必须提供并启用“迁移器”功能。
- 可能有限制:部分主机商可能会对迁移的网站大小或数量有限制。
操作步骤:
第一步:在旧主机上生成迁移令牌

(图片来源网络,侵删)
- 登录你的旧主机 CPanel。
- 在“搜索”框中输入
迁移器,找到并点击 "迁移器" (Transfer) 图标。 - 在迁移器页面,点击 “配置迁移” (Configure a Migration)。
- 你会看到一个 API 密钥。请务必复制并妥善保存这个密钥,它就像是搬家用的“钥匙”,之后要用它来连接新主机。
- 你可以选择要迁移的内容,通常是全部勾选(网站文件、数据库、电子邮件账户等)。
- 完成后,不要关闭这个页面,记下你的旧主机地址(如
oldserver.com:2083)和刚刚生成的 API 密钥。
第二步:在新主机上执行迁移
- 登录你的新主机 CPanel。
- 同样,找到并点击 "迁移器" (Transfer) 图标。
- 点击 “直接从其他账户迁移” (Directly from another account)。
- 在弹出的窗口中,输入你旧主机的 CPanel 地址(
https://oldserver.com:2083)和你刚刚复制的 API 密钥。 - 点击 “登录” (Login),新主机现在会连接到你的旧主机,并列出所有可以迁移的项目(网站、数据库、邮箱等)。
- 勾选你想要迁移的项目,然后点击 “迁移项目” (Migrate Items)。
- 等待迁移过程完成,根据网站大小和数据量,这可能需要几分钟到几小时不等,你可以随时刷新页面查看进度。
第三步:在新主机上验证和收尾
- 迁移完成后,CPanel 会显示迁移结果,点击 “完成迁移” (Complete Migration)。
- 检查网站:在浏览器中访问你的新域名(
http://你的新域名.com),确保网站正常显示,图片、样式等没有问题。 - 检查数据库:登录新主机的 CPanel,进入 "phpMyAdmin",检查数据库中的表和数据是否完整。
- 更新域名解析 (最关键的一步!):
- 登录你的域名注册商网站(如 GoDaddy, Namecheap, 阿里云等)。
- 找到域名管理,修改域名的 A 记录,将其指向你新主机的 IP 地址,你可以在新主机的 CPanel 控制面板或欢迎邮件中找到这个 IP 地址。
- 注意:DNS 修改后需要生效,这个过程称为“DNS 传播”,通常需要几分钟到 48 小时,你可以使用在线工具(如
dnschecker.org)来查看你的域名是否已经指向新 IP。
- 测试功能:登录网站后台,测试所有功能,如表单提交、用户登录、购物车等,确保一切正常。
- 旧主机数据保留:在确认新主机一切正常、DNS 完全生效后,再从旧主机上删除数据,以防万一,建议保留至少一周。
手动迁移 (当迁移器不可用时)
如果新主机不支持迁移器,或者你想对迁移过程有更精细的控制,可以选择手动方式,虽然繁琐一些,但可控性更强。
步骤 1:在旧主机上备份数据
-
备份网站文件:
(图片来源网络,侵删)- 登录旧主机 CPanel。
- 找到并点击 "备份" (Backup) 图标。
- 在“完整备份”区域,点击 “生成完整备份” (Generate Full Backup)。
- 选择备份存放位置。选择“远程 FTP 服务器”,然后输入你新主机的 FTP 信息(主机地址、用户名、密码、远程目录),这样备份文件会直接上传到新主机,省去你下载再上传的麻烦。
- 点击 “生成备份”,这个过程可能需要一些时间,请耐心等待。
-
备份数据库:
- 回到旧主机 CPanel,找到 "数据库" (Databases) 区域,点击 "phpMyAdmin"。
- 在左侧列表中,选择你的网站数据库。
- 点击顶部的 "导出" (Export) 选项卡。
- 选择 "快速 - 导出方式" (Quick - display Export Method)。
- 确保“格式”为 “SQL”。
- 点击 "执行" (Go),浏览器会开始下载一个
.sql文件,将这个文件保存到你的电脑上。
步骤 2:在新主机上恢复数据
-
恢复网站文件:
- 登录新主机 CPanel,找到 "文件管理器" (File Manager)。
- 进入
public_html目录(这是网站的根目录)。 - 删除里面的所有默认文件(如
welcome.html等),以避免与你的文件冲突。 - 如果你在第一步选择了远程 FTP 备份,文件应该已经在上传了,如果没有,你需要通过 "备份" (Backup) 功能中的 "还原" (Restore) 功能,从旧主机生成的备份文件中进行还原。
- 或者,你也可以使用 FTP 客户端(如 FileZilla)将你从旧主机下载的完整备份包上传到
public_html目录,然后在新主机的 CPanel 备份页面进行还原。
-
恢复数据库:
- 登录新主机 CPanel,在 "数据库" (Databases) 区域,点击 "MySQL 数据库向导" (MySQL Database Wizard)。
- 创建一个新的数据库和数据库用户(记录下数据库名、用户名和密码)。
- 创建完成后,返回 CPanel 主页,点击 "phpMyAdmin"。
- 在左侧选择你刚刚创建的新数据库。
- 点击顶部的 "导入" (Import) 选项卡。
- 点击 “选择文件”,选择你从旧主机下载的
.sql备份文件。 - 点击 "执行" (Go),等待数据库导入完成。
步骤 3:更新网站配置文件
这是手动迁移最关键也最容易出错的一步,你需要修改网站配置文件,告诉它新的数据库信息在哪里。
-
在新主机的 "文件管理器" 中,进入
public_html目录。 -
找到你的网站配置文件,这取决于你的网站类型:
- WordPress:
wp-config.php - Joomla:
configuration.php - Drupal:
sites/default/settings.php - 其他 PHP 网站: 可能是
config.php或类似名称的文件。
- WordPress:
-
编辑
wp-config.php(以 WordPress 为例):-
找到以下几行代码:
/** WordPress 数据库的名称 */ define('DB_NAME', '旧数据库名'); /** MySQL 数据库用户名 */ define('DB_USER', '旧数据库用户名'); /** MySQL 数据库密码 */ define('DB_PASSWORD', '旧数据库密码'); /** MySQL 主机 */ define('DB_HOST', '旧数据库主机'); -
将它们全部替换成你在新主机上创建的数据库信息。
-
特别注意
DB_HOST:在新主机上,这通常不是localhost,你可以在新主机的 CPanel 数据库页面找到正确的值,它可能是localhost、0.0.1或者一个类似mysqlxxx.secureserver.net的主机名。
-
-
保存文件。
步骤 4:收尾工作
这一步与方法一中的第三步完全相同:
- 检查网站。
- 更新域名解析 (DNS)。
- 测试所有功能。
- 确认无误后,删除旧主机数据。
常见问题与注意事项
-
最大执行时间超时
- 现象:在导入大型数据库时,可能会遇到 "Maximum execution time exceeded" 错误。
- 解决:联系你的新主机服务商,请求他们提高
php.ini文件中的max_execution_time和memory_limit值,或者,你可以使用大数据库导入工具,如BigDump。
-
权限问题
- 现象:网站上传图片失败,或出现权限相关的错误。
- 解决:在新主机的文件管理器中,选中
public_html目录下的文件夹和文件,点击“更改权限”,确保所有者设置为“用户”,并设置合适的权限(通常是文件夹 755,文件 644)。
-
MIME 类型错误
- 现象:网站无法正确显示某些文件(如字体、视频),提示 MIME 类型错误。
- 解决:这通常是
.htaccess文件在新主机上的配置与旧主机不同,检查并比较两个.htaccess文件,将必要的规则复制到新主机的文件中。
-
搬家前做什么?
- 通知用户:如果网站有流量,提前通知用户网站将进行维护。
- 关闭写入权限:在旧主机上,暂时将
wp-config.php等关键文件设置为只读(444),防止在搬家过程中有数据写入。 - 选择低峰期:在网站流量最少的时候进行搬家。
-
搬家后做什么?
- 设置 301 重定向:如果域名没有变,但你想确保所有旧链接都能跳转到新地址,可以在新主机的
.htaccess文件顶部添加以下代码(将olddomain.com替换为你的旧域名):Redirect 301 / http://newdomain.com/
- 提交 sitemap:向 Google Search Console 提交你网站的 sitemap,告知它网站已迁移。
- 设置 301 重定向:如果域名没有变,但你想确保所有旧链接都能跳转到新地址,可以在新主机的
| 方法 | 优点 | 缺点 | 适用人群 |
|---|---|---|---|
| CPanel 迁移器 | 简单、快速、自动化 | 依赖新主机支持 | 所有人,尤其是新手 |
| 手动迁移 | 灵活、可控、不依赖特定功能 | 步骤繁琐、耗时、易出错 | 有经验的用户、需要精细控制的情况 |
对于绝大多数用户来说,首选 CPanel 迁移器,如果遇到问题,再考虑手动迁移作为备选方案。
希望这份详细的指南能帮助你顺利完成网站搬家!如果在操作中遇到任何具体问题,可以随时提出。
