更换WordPress服务器需要系统操作,以下是详细步骤(操作前务必备份全站):
更换前的准备工作
-
完整备份网站
- 使用插件(如UpdraftPlus、All-in-One WP Migration)备份:导出数据库、主题、插件、上传文件(
wp-content
)。 - 手动备份(更可靠):
- 通过FTP下载整个WordPress根目录(含隐藏文件如
.htaccess
)。 - 通过phpMyAdmin导出数据库(SQL文件)。
- 通过FTP下载整个WordPress根目录(含隐藏文件如
- 使用插件(如UpdraftPlus、All-in-One WP Migration)备份:导出数据库、主题、插件、上传文件(
-
记录关键信息
- 数据库名、用户名、密码(在
wp-config.php
中查看)。 - 原服务器的PHP版本、扩展(如MySQLi、OPcache)。
- 数据库名、用户名、密码(在
-
新服务器环境配置
- 安装相同版本的PHP、MySQL/MariaDB。
- 创建同名数据库和用户(权限需匹配)。
迁移网站到新服务器
步骤1:上传文件到新服务器
- 用FTP工具(如FileZilla)将备份的WordPress文件上传至新服务器的网站根目录(如
public_html
)。 - 确保文件权限正确(目录755,文件644)。
步骤2:导入数据库
- 登录新服务器的phpMyAdmin,选择目标数据库 → 点击“导入” → 上传原数据库SQL文件。
步骤3:修改配置文件
- 编辑新服务器的
wp-config.php
:define('DB_NAME', '新数据库名'); define('DB_USER', '新数据库用户'); define('DB_PASSWORD', '新密码'); define('DB_HOST', 'localhost'); // 若需改端口,如:3307
- 更新
WP_HOME
和WP_SITEURL
(若域名不变可跳过):define('WP_HOME', 'https://你的新域名'); define('WP_SITEURL', 'https://你的新域名');
步骤4:处理域名解析(关键!)
- 临时测试:修改本地
hosts
文件,将域名指向新服务器IP(避免影响线上用户)。 - 正式切换:
- 在域名注册商处将DNS的A记录指向新服务器IP。
- TTL值调低至300秒(提前1天操作),减少生效等待时间。
新服务器上的收尾工作
-
检查网站功能
- 访问后台(
域名/wp-admin
),测试登录、编辑文章、安装插件。 - 检查固定链接:保存一次“设置→固定链接”以刷新规则。
- 更新缓存:清除浏览器/CDN/插件(如W3 Total Cache)的缓存。
- 访问后台(
-
修复常见问题
- 图片/样式丢失:
- 在数据库执行SQL替换旧URL(谨慎操作):
UPDATE wp_posts SET post_content = REPLACE(post_content, 'http://旧域名', 'https://新域名'); UPDATE wp_options SET option_value = REPLACE(option_value, 'http://旧域名', 'https://新域名');
- 或用插件(如Better Search Replace)安全替换。
- 在数据库执行SQL替换旧URL(谨慎操作):
- 403/404错误:检查
.htaccess
文件是否上传,内容是否完整(默认规则见WordPress文档)。 - 数据库连接错误:核对
wp-config.php
中的数据库信息、主机地址(如使用远程数据库需开放IP白名单)。
- 图片/样式丢失:
-
旧服务器保留期
- 保持旧服务器运行至少48小时,确保DNS全球生效。
- 流量稳定后,取消旧服务器服务。
高级优化建议
- 提升安全性:
- 在新服务器安装SSL证书(可用Let’s Encrypt免费生成)。
- 限制后台登录尝试(插件:Limit Login Attempts Reloaded)。
- 性能调优:
- 启用OPcache、配置对象缓存(Redis/Memcached)。
- 使用CDN加速静态资源(如Cloudflare)。
注意事项
- 操作窗口:在网站低峰期(如凌晨)迁移,减少影响。
- 备份验证:迁移前恢复备份到本地环境测试完整性。
- 插件兼容性:提前在新服务器测试关键插件(尤其是安全、缓存类)。
引用说明:本文方法参考WordPress官方迁移指南、主机商文档(如BlueHost/Kinsta)及数据库管理最佳实践,技术细节详见WordPress Codex。
原创文章,发布者:酷盾叔,转转请注明出处:https://www.kd.cn/ask/32490.html