如何更改WordPress多站点域名?
- CMS教程
- 2025-06-02
- 4957
wp-config.php中的
 DOMAIN_CURRENT_SITE,并借助专业数据库搜索替换工具(如Better Search Replace)批量更新所有站点链接,确保替换序列化数据安全,操作顺序不可颠倒。
WordPress多站点域名修改指南
重要提示:修改多站点域名是高风险操作!操作前务必完整备份数据库和文件(推荐使用UpdraftPlus或All-in-One WP Migration),并确保具备服务器和数据库管理基础,操作失误可能导致网站瘫痪!
准备工作
- 备份数据 
  - 数据库备份:通过phpMyAdmin导出全库SQL文件。
- 文件备份:FTP下载整个WordPress目录(包括wp-config.php和.htaccess)。
 
- 获取新域名信息 
  - 确认新域名已解析到当前服务器IP。
- 准备SSL证书(可通过Let’s Encrypt免费申请)。
 
- 停用缓存插件 在WordPress后台停用所有缓存插件(如W3 Total Cache、WP Super Cache)。 
核心操作步骤
步骤1:修改wp-config.php文件
 
通过FTP或主机面板打开wp-config.php,在define('WP_DEBUG', false);上方添加: 
define('WP_ALLOW_MULTISITE', true); // 确保已开启多站点  
define('DOMAIN_CURRENT_SITE', 'newdomain.com'); // 替换为新域名   
注意:newdomain.com不带http://或www。 
步骤2:更新多站点网络配置
打开 网站根目录 下的.htaccess文件,将原有规则替换为: 
RewriteEngine On  
RewriteBase /  
RewriteRule ^index.php$ - [L]  
# 将旧域名重定向到新域名(防内容重复)  
RewriteCond %{HTTP_HOST} ^olddomain.com$ [NC,OR]  
RewriteCond %{HTTP_HOST} ^www.olddomain.com$ [NC]  
RewriteRule ^(.*)$ https://newdomain.com/$1 [R=301,L]  
# 多站点规则(WordPress默认生成)  
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]  
RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L]  
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*.php)$ $2 [L]  
RewriteRule . index.php [L]   
关键提示:
- 将olddomain.com和newdomain.com替换为实际域名。
- 301重定向可避免SEO权重流失。
步骤3:替换数据库中的旧域名(最高风险)
方法1:使用插件(推荐小白)
安装 Better Search Replace 插件,对所有表执行替换: 

- :http://olddomain.com
- 替换为:https://newdomain.com
- 勾选 “所有表” 并勾选 “区分协议”(若启用HTTPS)。
方法2:手动SQL命令(需精准操作)
在phpMyAdmin中执行: 
UPDATE wp_options SET option_value = REPLACE(option_value, 'olddomain.com', 'newdomain.com'); UPDATE wp_posts SET post_content = REPLACE(post_content, 'olddomain.com', 'newdomain.com'); UPDATE wp_blogs SET domain = 'newdomain.com' WHERE domain = 'olddomain.com'; -- 注意:表前缀(如wp_)需根据实际修改
重点排查表:wp_site、wp_sitemeta、wp_blogs、wp_options及子站点的独立表(如wp_2_options)。 
后续关键配置
- 更新子站点域名 
  - 进入 网络管理后台 → 站点 → 编辑子站点,手动修改子站点的域名(需逐个操作)。
 
- 重置Permalinks 
  - 在 设置 → 固定链接 中点击“保存更改”,刷新重写规则。
 
- SSL证书配置 为主域名和所有子站点安装SSL证书(可使用Certbot或主机商一键工具)。 
- 清除缓存 清除服务器缓存(如Redis/Memcached)、CDN缓存及浏览器缓存。 
验证与测试
- 主站点检查 
  - 访问https://newdomain.com和https://www.newdomain.com(确保无混合内容错误)。
 
- 访问
- 子站点抽查 随机打开3-5个子站点,测试文章内链、图片路径是否正常。  
- SEO关键项 
  - 使用Screaming Frog扫描死链,检查Google Search Console的覆盖率报告。
- 更新sitemap.xml并重新提交。
 
常见问题排查
-  页面样式错乱: 
 在wp-config.php中开启调试模式:define('WP_DEBUG', true); define('SCRIPT_DEBUG', true);检查控制台错误,通常为硬编码旧域名的CSS/JS文件导致。 
-  数据库连接错误: 
 恢复备份的wp-config.php,检查数据库凭证。
-  子站点无法访问: 
 确认.htaccess规则未冲突,子站点的wp_options表中siteurl/home值已更新。
高级场景处理
-  更换主域名但保留子站点原域名: 
 需手动编辑每个子站点的wp_options表(或子站数据库),单独设置siteurl和home值。 
-  批量修改子站点域名: 
 使用插件 WP CLI 命令(需服务器权限):wp site list --field=url | xargs -I % wp search-replace "olddomain.com" "newdomain.com" --url=% --all-tables 
操作守则:
- ️ 禁止在未备份时修改数据库!
- ️ 旧域名保持解析至少48小时,确保重定向生效。
- ️ 修改后立即在百度/Google站长平台更新域名属性。
引用说明:本文参考WordPress官方文档、Apache重定向规则标准及SEO最佳实践(Moz, Search Engine Journal),技术细节遵循WordPress Core Handbook中的多站点管理指南。
通过以上步骤,您可安全完成WordPress多站点的域名迁移,若遇复杂情况,建议联系专业开发者或主机商支持团队。
 
  
			 
			 
			 
			 
			 
			 
			