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

cpanel 网站搬家
(图片来源网络,侵删)

核心思想

CPanel 网站搬家的核心主要有三部分:

  1. 备份数据 (从旧主机):将你网站的所有文件和数据库完整地下载下来。
  2. 上传数据 (到新主机):将备份的文件和数据库上传到新的主机空间。
  3. 更新配置 (在新主机):修改网站配置文件,使其指向新的数据库信息。

幸运的是,CPanel 提供了非常方便的工具,可以大大简化这个过程。


使用 CPanel 自带的“迁移器” (推荐)

这是最简单、最直接的方法,强烈推荐新手用户优先使用,它通过一个插件,在后台自动完成大部分工作。

优点

  • 自动化:只需在旧主机和新主机上点击几下,即可完成大部分操作。
  • 完整:通常会同步文件、数据库、电子邮件账户等。
  • 安全:通过 API 密钥进行连接,比 FTP 更安全。

缺点

  • 新旧主机必须都支持:你的新主机服务商必须提供并启用“迁移器”功能。
  • 可能有限制:部分主机商可能会对迁移的网站大小或数量有限制。

操作步骤

第一步:在旧主机上生成迁移令牌

cpanel 网站搬家
(图片来源网络,侵删)
  1. 登录你的旧主机 CPanel。
  2. 在“搜索”框中输入 迁移器,找到并点击 "迁移器" (Transfer) 图标。
  3. 在迁移器页面,点击 “配置迁移” (Configure a Migration)
  4. 你会看到一个 API 密钥。请务必复制并妥善保存这个密钥,它就像是搬家用的“钥匙”,之后要用它来连接新主机。
  5. 你可以选择要迁移的内容,通常是全部勾选(网站文件、数据库、电子邮件账户等)。
  6. 完成后,不要关闭这个页面,记下你的旧主机地址(如 oldserver.com:2083)和刚刚生成的 API 密钥。

第二步:在新主机上执行迁移

  1. 登录你的新主机 CPanel。
  2. 同样,找到并点击 "迁移器" (Transfer) 图标。
  3. 点击 “直接从其他账户迁移” (Directly from another account)
  4. 在弹出的窗口中,输入你旧主机的 CPanel 地址https://oldserver.com:2083)和你刚刚复制的 API 密钥
  5. 点击 “登录” (Login),新主机现在会连接到你的旧主机,并列出所有可以迁移的项目(网站、数据库、邮箱等)。
  6. 勾选你想要迁移的项目,然后点击 “迁移项目” (Migrate Items)
  7. 等待迁移过程完成,根据网站大小和数据量,这可能需要几分钟到几小时不等,你可以随时刷新页面查看进度。

第三步:在新主机上验证和收尾

  1. 迁移完成后,CPanel 会显示迁移结果,点击 “完成迁移” (Complete Migration)
  2. 检查网站:在浏览器中访问你的新域名(http://你的新域名.com),确保网站正常显示,图片、样式等没有问题。
  3. 检查数据库:登录新主机的 CPanel,进入 "phpMyAdmin",检查数据库中的表和数据是否完整。
  4. 更新域名解析 (最关键的一步!)
    • 登录你的域名注册商网站(如 GoDaddy, Namecheap, 阿里云等)。
    • 找到域名管理,修改域名的 A 记录,将其指向你新主机的 IP 地址,你可以在新主机的 CPanel 控制面板或欢迎邮件中找到这个 IP 地址。
    • 注意:DNS 修改后需要生效,这个过程称为“DNS 传播”,通常需要几分钟到 48 小时,你可以使用在线工具(如 dnschecker.org)来查看你的域名是否已经指向新 IP。
  5. 测试功能:登录网站后台,测试所有功能,如表单提交、用户登录、购物车等,确保一切正常。
  6. 旧主机数据保留:在确认新主机一切正常、DNS 完全生效后,再从旧主机上删除数据,以防万一,建议保留至少一周。

手动迁移 (当迁移器不可用时)

如果新主机不支持迁移器,或者你想对迁移过程有更精细的控制,可以选择手动方式,虽然繁琐一些,但可控性更强。

步骤 1:在旧主机上备份数据

  1. 备份网站文件

    cpanel 网站搬家
    (图片来源网络,侵删)
    • 登录旧主机 CPanel。
    • 找到并点击 "备份" (Backup) 图标。
    • 在“完整备份”区域,点击 “生成完整备份” (Generate Full Backup)
    • 选择备份存放位置。选择“远程 FTP 服务器”,然后输入你新主机的 FTP 信息(主机地址、用户名、密码、远程目录),这样备份文件会直接上传到新主机,省去你下载再上传的麻烦。
    • 点击 “生成备份”,这个过程可能需要一些时间,请耐心等待。
  2. 备份数据库

    • 回到旧主机 CPanel,找到 "数据库" (Databases) 区域,点击 "phpMyAdmin"
    • 在左侧列表中,选择你的网站数据库。
    • 点击顶部的 "导出" (Export) 选项卡。
    • 选择 "快速 - 导出方式" (Quick - display Export Method)
    • 确保“格式”为 “SQL”
    • 点击 "执行" (Go),浏览器会开始下载一个 .sql 文件,将这个文件保存到你的电脑上。

步骤 2:在新主机上恢复数据

  1. 恢复网站文件

    • 登录新主机 CPanel,找到 "文件管理器" (File Manager)
    • 进入 public_html 目录(这是网站的根目录)。
    • 删除里面的所有默认文件(如 welcome.html 等),以避免与你的文件冲突。
    • 如果你在第一步选择了远程 FTP 备份,文件应该已经在上传了,如果没有,你需要通过 "备份" (Backup) 功能中的 "还原" (Restore) 功能,从旧主机生成的备份文件中进行还原。
    • 或者,你也可以使用 FTP 客户端(如 FileZilla)将你从旧主机下载的完整备份包上传到 public_html 目录,然后在新主机的 CPanel 备份页面进行还原。
  2. 恢复数据库

    • 登录新主机 CPanel,在 "数据库" (Databases) 区域,点击 "MySQL 数据库向导" (MySQL Database Wizard)
    • 创建一个新的数据库和数据库用户(记录下数据库名、用户名和密码)。
    • 创建完成后,返回 CPanel 主页,点击 "phpMyAdmin"
    • 在左侧选择你刚刚创建的新数据库
    • 点击顶部的 "导入" (Import) 选项卡。
    • 点击 “选择文件”,选择你从旧主机下载的 .sql 备份文件。
    • 点击 "执行" (Go),等待数据库导入完成。

步骤 3:更新网站配置文件

这是手动迁移最关键也最容易出错的一步,你需要修改网站配置文件,告诉它新的数据库信息在哪里。

  1. 在新主机的 "文件管理器" 中,进入 public_html 目录。

  2. 找到你的网站配置文件,这取决于你的网站类型:

    • WordPress: wp-config.php
    • Joomla: configuration.php
    • Drupal: sites/default/settings.php
    • 其他 PHP 网站: 可能是 config.php 或类似名称的文件。
  3. 编辑 wp-config.php (以 WordPress 为例)

    • 找到以下几行代码:

      /** WordPress 数据库的名称 */
      define('DB_NAME', '旧数据库名');
      /** MySQL 数据库用户名 */
      define('DB_USER', '旧数据库用户名');
      /** MySQL 数据库密码 */
      define('DB_PASSWORD', '旧数据库密码');
      /** MySQL 主机 */
      define('DB_HOST', '旧数据库主机');
    • 将它们全部替换成你在新主机上创建的数据库信息。

    • 特别注意 DB_HOST:在新主机上,这通常不是 localhost,你可以在新主机的 CPanel 数据库页面找到正确的值,它可能是 localhost0.0.1 或者一个类似 mysqlxxx.secureserver.net 的主机名。

  4. 保存文件。

步骤 4:收尾工作

这一步与方法一中的第三步完全相同:

  • 检查网站
  • 更新域名解析 (DNS)
  • 测试所有功能
  • 确认无误后,删除旧主机数据

常见问题与注意事项

  1. 最大执行时间超时

    • 现象:在导入大型数据库时,可能会遇到 "Maximum execution time exceeded" 错误。
    • 解决:联系你的新主机服务商,请求他们提高 php.ini 文件中的 max_execution_timememory_limit 值,或者,你可以使用大数据库导入工具,如 BigDump
  2. 权限问题

    • 现象:网站上传图片失败,或出现权限相关的错误。
    • 解决:在新主机的文件管理器中,选中 public_html 目录下的文件夹和文件,点击“更改权限”,确保所有者设置为“用户”,并设置合适的权限(通常是文件夹 755,文件 644)。
  3. MIME 类型错误

    • 现象:网站无法正确显示某些文件(如字体、视频),提示 MIME 类型错误。
    • 解决:这通常是 .htaccess 文件在新主机上的配置与旧主机不同,检查并比较两个 .htaccess 文件,将必要的规则复制到新主机的文件中。
  4. 搬家前做什么?

    • 通知用户:如果网站有流量,提前通知用户网站将进行维护。
    • 关闭写入权限:在旧主机上,暂时将 wp-config.php 等关键文件设置为只读(444),防止在搬家过程中有数据写入。
    • 选择低峰期:在网站流量最少的时候进行搬家。
  5. 搬家后做什么?

    • 设置 301 重定向:如果域名没有变,但你想确保所有旧链接都能跳转到新地址,可以在新主机的 .htaccess 文件顶部添加以下代码(将 olddomain.com 替换为你的旧域名):
      Redirect 301 / http://newdomain.com/
    • 提交 sitemap:向 Google Search Console 提交你网站的 sitemap,告知它网站已迁移。
方法 优点 缺点 适用人群
CPanel 迁移器 简单、快速、自动化 依赖新主机支持 所有人,尤其是新手
手动迁移 灵活、可控、不依赖特定功能 步骤繁琐、耗时、易出错 有经验的用户、需要精细控制的情况

对于绝大多数用户来说,首选 CPanel 迁移器,如果遇到问题,再考虑手动迁移作为备选方案。

希望这份详细的指南能帮助你顺利完成网站搬家!如果在操作中遇到任何具体问题,可以随时提出。