本文目录导读:

PHP空间转移(网站迁移)的核心是 移动文件 和 移动数据库,根据你的主机类型(虚拟主机、VPS、云服务器)不同,操作方式略有差异。
以下是通用的、标准的 PHP 网站迁移步骤(适用于例如 WordPress、Discuz、ThinkPHP 等大多数程序):
第一步:备份旧空间数据
在动任何操作之前,务必先备份。
备份文件(源代码)
- 方式 A:FTP/SFTP
- 使用 FileZilla 或类似工具连接旧主机。
- 下载网站根目录(通常是
public_html、wwwroot或htdocs)下的所有文件到本地。
- 方式 B:主机面板(如 cPanel/宝塔)
进入文件管理器,直接压缩整个网站目录,然后下载 zip/tar.gz 压缩包。
备份数据库(MySQL/ MariaDB)
- 方式 A:phpMyAdmin
- 登录旧主机的 phpMyAdmin。
- 选择你的数据库。
- 点击“导出” -> “快速” -> “执行”,下载
.sql文件。
- 方式 B:命令行(SSH)
mysqldump -u 用户名 -p 数据库名 > 备份文件名.sql
- 方式 C:面板工具(如宝塔的“计划任务”或“数据库”备份功能)。
重要: 如果你有
.env文件、wp-config.php或config.php,请确认里面记录了数据库名称、用户名、密码,后续会用到。
第二步:准备新空间
确保新环境支持 PHP,主要检查:
- PHP 版本:必须支持旧程序所需的最低版本(旧版程序可能不支持 PHP 8.x)。
- 扩展:安装必要的 PHP 扩展(如
mysqli、pdo、curl、gd、mbstring等)。 - 数据库:创建一个新的空数据库和用户,并记下数据库名、用户名、密码、主机地址(通常是 localhost 或 127.0.0.1)。
第三步:上传文件到新空间
- 将第一步下载的所有文件(或解压后的文件)上传到新主机的网站根目录。
- 检查
.htaccess(Apache)或nginx 配置:如果原网站有伪静态规则,需要在新服务器上重新配置。 - 注意隐藏文件:如
.env、.git、.user.ini等,确保它们也被上传。
第四步:导入数据库到新空间
- 登录新主机的 phpMyAdmin(或其他数据库管理工具)。
- 选择你在第二步创建好的空数据库。
- 点击“导入” -> 选择第一步下载的
.sql文件 -> 执行。
第五步:修改配置文件(最关键)
程序需要知道“新数据库”的连接信息。
打开配置文件(常见文件名)进行修改:
- WordPress:
wp-config.php - ThinkPHP / Laravel:
.env文件 (修改DB_DATABASE,DB_USERNAME,DB_PASSWORD) - Discuz / DeDeCMS:
config/config_global.php或data/config.php - 通用 CMS:通常位于
include/config.php或config.php
你需要将里面的数据库信息替换为新空间的数据库信息:
// WordPress 的 wp-config.php
define('DB_NAME', '新数据库名');
define('DB_USER', '新数据库用户名');
define('DB_PASSWORD', '新数据库密码');
define('DB_HOST', 'localhost'); // 通常不变,除非是远程数据库
高级技巧:如果旧域名解析到新 IP 时,网页内有大量旧域名链接,需要批量替换,WordPress,安装插件 “Better Search Replace” 或 SQL 命令:
UPDATE wp_options SET option_value = '新域名' WHERE option_name = 'siteurl'; UPDATE wp_options SET option_value = '新域名' WHERE option_name = 'home';
第六步:解析域名与测试
- 修改 DNS(域名解析)
- 去域名管理后台(如阿里云、DNSPod),将域名的 A 记录或 CNAME 指向新服务器的 IP 地址。
- 生效时间:10 分钟到 48 小时不等。
- 本地测试(推荐)
- 修改你电脑的
hosts文件(如C:\Windows\System32\drivers\etc\hosts),添加一行:新服务器IP 你的域名 - 这样只有你的电脑访问新服务器,用于检查网站是否正常。
- 修改你电脑的
- 测试项目:
- 首页能否正常打开。
- 图片/样式是否加载(检查图片路径是绝对路径还是相对路径)。
- 后台能否登录。
- 功能(搜索、评论、提交表单)是否正常。
常见问题排查
| 症状 | 可能原因 | 解决办法 |
|---|---|---|
| 白屏 / 500 错误 | PHP 版本不兼容、文件权限错误、.htaccess 问题 | 查看服务器错误日志;检查 PHP 版本;将文件权限设为 644,文件夹 755。 |
| 数据库连接错误 | 配置文件的数据库名/密码/主机错误 | 仔细核对 wp-config.php 或 .env 中的信息。 |
| 图片/样式缺失 | 域名未解析完成;链接是绝对路径或使用了 CDN | 清除浏览器缓存;等待 DNS 生效;批量替换 URL。 |
| 404 错误 | 伪静态规则(Rewrite)未启用或配置错误 | 检查 Apache 是否开启 mod_rewrite;Nginx 需要写规则。 |
- 小型网站:直接 FTP 下载 + phpMyAdmin 导出/导入 + 改配置,耗时 10 分钟。
- 大型网站:建议用 SSH/面板的压缩包功能,或在服务器之间直接用
wget传输文件(更快更稳定)。 - 最稳健的方法:使用“一键迁移”插件(如 All-in-One WP Migration 用于 WordPress),或托管商提供的迁移工具(如 SiteGround Migrator)。
如果你能提供更具体的程序名称(比如是“WordPress”还是“dedecms”)或主机类型(虚拟主机/服务器),我可以给出更精确的指导。