宝塔面板“网站备份”仅导出网站文件、数据库SQL、SSL公钥证书和域名配置文件四类内容,不包含PHP版本、Web全局配置、伪静态规则、SSL私钥、计划任务及FTP用户等关键环境信息。
自带的“网站备份”功能可以导出整站数据,但
它不等于“整站所有数据”的完整镜像
——它只打包你勾选的几类内容,且默认不包含 PHP 版本、Web 服务配置、伪静态规则细节、SSL 私钥(仅证书)、计划任务、FTP 用户等关键环境信息。
哪些数据能被一键备份真正覆盖?
面板的“备份网站”按钮实际导出的是四类可选内容:
-
:即
下的内容(不含
、日志等排除项)
-
:仅导出 SQL 文件,不包含 MySQL 配置或用户权限语句
-
:只含公钥证书和证书链(
),不含私钥(
)
-
:指 Nginx/Apache 的
,但不包括全局配置(如
)、MIME 类型、超时设置等
为什么直接下载备份包后在新服务器上可能跑不起来?
常见失败现象:
- 页面 502 或 500,但日志里没报错 →
或缺少扩展(如
、
)
- 网站打开但图片/JS/CSS 404 → 伪静态规则未同步,或
块里路径写死
- 后台登录跳转回旧域名 →
表中
/
未替换(WordPress 场景)
- SSL 显示“不安全” → 只复制了证书,没传
,或 Nginx 配置里
路径错误
怎么补全缺失的关键项?
必须手动追加以下三项,才算“离线可还原”:
- 导出当前 PHP 环境:运行
(把
换成你实际版本号)
- 备份 Web 全局配置:复制
或
- 提取并校验 SSL 私钥:私钥通常在
下,确认存在
,并检查权限为
用命令行快速验证备份完整性
别等搬到新机器才发现缺东西。在旧服务器执行以下检查:
- 确认备份包里有数据库文件:
- 检查配置文件是否真被包含:
- 查看压缩包内网站根目录结构是否合理:
真正麻烦的从来不是打包,而是搞清哪些东西“看起来被备了,其实没真正落进包里”。比如
导出的站点配置只是文本快照,不带文件权限;而面板备份里的
选项,实际只复制
目录下的 conf,不拷全局配置——这两者差一层,就足以让迁移卡住半天。
宝塔面板网站文件/www/wwwroot/域名/.user.ini数据库SSL 证书.pem.key网站配置文件域名.confnginx.confPHP 版本不一致fileinfocurllocationwp_optionssiteurlhome域名.keyssl_certificate_key/www/server/php/80/bin/php -m > php_modules.txt80/www/server/nginx/conf/nginx.conf/www/server/apache/conf/httpd.conf/www/server/panel/vhost/cert/域名/privkey.pem600tar -tzf /www/backup/site/域名_20260329.tar.gz | grep ".sql"tar -tzf /www/backup/site/域名_20260329.tar.gz | grep "conf"tar -tzf /www/backup/site/域名_20260329.tar.gz | head -n 10bt 7 1网站配置文件vhost