WordPress网站搬迁至新主机的完整流程与问题排查方法

📍 WDQWDWQD987AAAAA:216.73.216.245
📱 Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
🔗 /ad256011972a.html
📄

把 WordPress 网站迁移到新服务器,最让人担心的往往不是步骤繁琐,而是搬家后文章缺失、图片无法显示、域名解析出错。只要按照备份、环境搭建、配置修改、最终验证的顺序推进,每一步都预留回退空间,旧主机的全部内容就能安全迁移到新环境。

1. 迁移前的数据备份:程序文件与数据库一个都不能少

更换主机之前,备份是不可省略的环节。需要准备两份关键资料:网站程序文件,以及承载文章、评论和设置的数据库。

一条底线原则:备份文件务必下载到本地并尝试打开验证,确认可用后再进行下一步。在新站完全恢复正常之前,旧空间的任何数据都不要清理,那是唯一的回退保障。

2. 新主机环境准备:先建库,再传文件

新空间必须先搭建好基础环境,才能接收旧数据。推荐的操作顺序是:先在控制面板创建数据库,再上传网站文件。

  1. 创建新数据库:登录新主机管理面板(如 cPanel 或宝塔面板),进入数据库管理功能,新建一个数据库,并为其创建专属用户,设置高强度密码,同时授予该用户全部权限。建好的库名、用户名、密码需完整记录下来。
  2. 导入原有数据库:在新空间的 phpMyAdmin 中,选中刚创建的空数据库,点击导入并选择之前备份的 SQL 文件进行恢复。如果备份文件超出上传大小限制,可以先压缩为 zip 再上传,或者把压缩包放入文件管理器,利用面板自带的解压功能完成释放。
  3. 上传程序文件:使用 FileZilla 等 FTP 工具,将本地备份的所有文件上传到新空间的网站根目录(通常是 public_html 或 www 目录)。文件较多时,建议先在本地打包成 zip 压缩包再上传,然后通过面板自带的解压功能释放,能节省大量时间,也能降低传输中断的风险。

3. 调整 wp-config.php:让 WordPress 连接新数据库

文件上传完成后,WordPress 还无法自动识别新数据库,需要手动修改配置来完成对接。

在网站根目录找到 wp-config.php 文件,用文本编辑器打开,查找 DB_NAME、DB_USER、DB_PASSWORD 这三项配置,把等号右侧的值分别替换为新数据库的库名、用户名和密码。如果新主机使用的数据库地址与旧空间不同,DB_HOST 这一项也需要同步更新。保存文件后,再次打开网站首页,如果出现数据库连接成功的提示或直接正常显示页面,说明配置已生效。

若网站页面出现数据库连接错误,先检查这三项值是否填写无误,再确认数据库用户是否已被授予完整权限。多数情况下,问题出在密码复制时混入了多余空格,或数据库地址写错。

4. 域名解析与永久链接调整

搬完数据后,还需要处理域名解析和链接配置,否则网站可能无法正常访问或出现大量 404 错误。

5. 常见问题

5.1 数据库导入时提示文件过大,如何处理

如果备份的 SQL 文件超过 phpMyAdmin 的上传限制,可以先将文件压缩成 zip 格式再尝试上传,或者在文件管理器中上传压缩包后,使用面板自带的解压功能将 SQL 文件解压到指定目录,再在 phpMyAdmin 中执行导入。部分面板也支持通过命令行导入,效率更高。

5.2 更换主机后网站出现 500 内部服务器错误

500 错误通常由文件权限或 .htaccess 配置问题引起。先检查 wp-content 目录的权限是否设置为 755,文件权限是否为 644。如果权限无误,尝试将 .htaccess 文件重命名为 .htaccess_backup,然后到后台固定链接设置中点击保存,让系统重新生成规则文件。若问题仍存在,检查 PHP 版本是否过旧或与当前主题、插件不兼容。

5.3 首页能打开但内页全部 404 如何解决

这种情况一般是固定链接的重写规则没有生效。进入后台"设置"→"固定链接",直接点击底部的"保存更改"按钮,系统会刷新 .htaccess 文件中的重写规则。若操作后仍无效,确认新主机的 Apache 是否已开启 mod_rewrite 模块,或者检查站点是否配置了 Nginx 环境,Nginx 需要单独添加伪静态规则。

6. 结语

WordPress 换主机并没有想象中复杂,核心在于按顺序推进并做好每一步的确认。备份环节要验证文件完整性,数据库导入后要测试可读性,配置修改后要检查页面访问,最后再调整域名解析。整个过程中,旧主机保留不动是最稳妥的策略,等新站确认运行正常再清理旧数据也不迟。

图1 图2

nginx