
目录
什么是暂存站点及其重要性
暂存站点是您正式网站(生产环境)在完全隔离环境中运行的精确副本,目的是让您在影响真实访客之前测试各种变更——更新、新功能、代码修改等。
可以把它想象成一个测试厨房:在正式推出菜单给顾客之前,先完善好配方。
⚠️ 为什么需要暂存:WordPress网站因插件/主题更新冲突而崩溃是极为常见的情况。暂存环境能完全消除对真实用户造成停机的风险。
暂存站点的主要优势
- 安全测试WordPress核心、插件和主题更新,不影响正式网站
- 安全地开发新功能或重新设计页面
- 测试速度优化和缓存配置
- 在真实但安全的环境中培训团队成员
- 验证迁移脚本或大规模主题改版
何时应该使用暂存站点
并非每次变更都需要暂存,但以下情况应始终先在暂存环境测试:
| 情况 | 风险级别 | 建议 |
|---|---|---|
| WordPress核心大版本更新 | 高 | ✅ 先在暂存测试 |
| 同时更新多个插件 | 高 | ✅ 先在暂存测试 |
| 更换主题 | 高 | ✅ 先在暂存测试 |
| 添加自定义代码/functions.php | 中 | ✅ 建议测试 |
| 安装复杂的新插件 | 中 | ✅ 建议测试 |
| 编辑文字或图片 | 低 | 可直接在生产环境操作 |
| 发布新文章 | 低 | 可直接在生产环境操作 |
方法一:通过DirectAdmin手动创建
此方法适合使用AsiaGB WordPress主机的用户(带DirectAdmin面板),无需安装额外插件。
第一步:创建子域名
DirectAdmin → 域名管理 → 子域名管理 → 创建staging.yourdomain.com,指向新目录如public_html/staging。
第二步:复制WordPress文件
DirectAdmin → 文件管理器 → 选择public_html中的所有文件 → 复制到public_html/staging。
cp -r /home/username/domains/yourdomain.com/public_html/* \
/home/username/domains/yourdomain.com/public_html/staging/
第三步:导出并导入数据库
DirectAdmin → MySQL管理 → 导出现有数据库 → 创建新数据库(如username_staging)→ 导入数据。
第四步:修改wp-config.php
// 编辑 /staging/wp-config.php
define('DB_NAME', 'username_staging');
define('DB_USER', 'username_staging');
define('DB_PASSWORD', 'new_password');
define('DB_HOST', 'localhost');
第五步:更新数据库中的URL
UPDATE wp_options SET option_value = 'https://staging.yourdomain.com'
WHERE option_name IN ('siteurl', 'home');
方法二:使用WP Staging插件
WP Staging是一款流行插件,几次点击即可创建暂存站点,非常适合初学者。
安装和使用
- WordPress后台 → 插件 → 安装插件 → 搜索"WP Staging" → 安装并激活
- 进入WP Staging → 创建新暂存站点
- 命名暂存站点(如
staging,URL将为yourdomain.com/staging) - 选择要复制的数据表(建议全选)
- 点击开始克隆,等待完成
💡 免费版 vs Pro版:免费版足以满足一般测试需求。Pro版增加了推送到生产环境和自动定时备份功能。
方法三:使用Duplicator Pro
Duplicator广泛用于备份和创建暂存站点,有免费版和付费版。
主要步骤
- 安装Duplicator → 包 → 创建新包
- 选择"克隆/暂存" → 配置包选项
- Duplicator创建两个文件:archive.zip + installer.php
- 将两个文件上传到暂存子域名/子目录
- 通过浏览器运行installer.php设置暂存环境
正确配置暂存站点
创建暂存站点后,以下设置至关重要,可防止暂存站点影响SEO和生产环境:
1. 禁止搜索引擎索引
WordPress后台(暂存)→ 设置 → 阅读 → 勾选"建议搜索引擎不索引本站点"
2. 在robots.txt中添加noindex
User-agent: * Disallow: /
3. 禁用外发邮件
在暂存环境安装"Disable Emails"插件,防止测试期间向真实用户发送邮件。
4. 设置密码保护
DirectAdmin → 网络保护 → 密码保护目录 → 为暂存子域名设置密码,保持私密性。
5. 禁用非必要插件
在暂存环境上,禁用连接外部服务的插件,如支付网关、CRM和邮件营销工具,防止测试期间发送真实数据。
从暂存部署到生产环境
在暂存环境验证一切正常后,将更改推送到生产环境的步骤:
需要部署的内容
- 代码变更:主题文件、插件文件、functions.php → 复制到生产环境
- 数据库变更:如果架构有变化,运行迁移脚本
- 媒体文件:如果在暂存环境添加了图片,也需复制到生产环境
⚠️ 警告:如果创建暂存站点后生产环境添加了新内容,切勿用暂存数据库覆盖整个生产数据库,否则会丢失那些内容。应该只合并架构变更。
部署前始终备份
AsiaGB主机提供每月两次自动备份(每月1日和15日),但建议在每次重要部署前通过DirectAdmin或Duplicator手动创建备份。
各方法对比
| 方法 | 难易度 | 费用 | 推送到生产 | 适合人群 |
|---|---|---|---|---|
| DirectAdmin手动 | 中等 | 免费 | 手动操作 | 有经验的用户 |
| WP Staging(免费) | 简单 | 免费 | 不支持 | 初学者,基础测试 |
| WP Staging(Pro) | 简单 | 约$99/年 | ✅ 支持 | 开发团队 |
| Duplicator Pro | 中等 | 约$69/年 | ✅ 支持 | 备份+暂存 |
| WP-CLI(高级) | 困难 | 免费 | 自定义脚本 | 高级开发者 |
WordPress暂存最佳实践
- 每次测试前始终将暂存与生产同步
- 重大部署前在暂存环境测试至少24-48小时
- 使用版本控制(Git)追踪代码变更
- 记录测试内容和结果,供日后参考
- 删除不再使用的暂存站点以节省磁盘空间