You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何解决WordPress多站点无法映射至非主域名子目录的问题?

WordPress多站点独立域名子目录站点跳转问题解决方案

核心结论

不需要修改DNS,问题出在WordPress多站点的内部配置、.htaccess规则或缓存上,以下是针对性排查和修复步骤:

1. 精准修正站点数据库配置

  • 找到新增站点对应的数据库表(通常为wp_XX_options,XX是站点ID,可在网络管理后台的站点列表查看),手动修改siteurl和home字段的值为https://example.ta/de——全局搜索替换可能遗漏或误改,直接针对这两个字段修改更可靠。
  • 检查wp_blogs表,确保该站点的domain字段为example.ta,path字段为/de/(注意末尾的斜杠)。

2. 调整.htaccess规则

在默认的多站点.htaccess规则前,添加针对example.ta/de的定向规则:

# 适配example.ta/de站点的请求转发
RewriteCond %{HTTP_HOST} ^example\.ta$
RewriteCond %{REQUEST_URI} ^/de/
RewriteRule ^de/(.*)$ /index.php?site_id=XX [L]

将XX替换为新增站点的实际ID,这条规则会把example.ta/de下的所有请求导向对应站点的入口文件。

3. 核对wp-config.php多站点配置

确保以下参数设置正确:

define('WP_ALLOW_MULTISITE', true);
define('MULTISITE', true);
define('SUBDOMAIN_INSTALL', false); // 混合子域名/子目录站点时设为false
define('DOMAIN_CURRENT_SITE', 'example.com');
define('PATH_CURRENT_SITE', '/');
define('SITE_ID_CURRENT_SITE', 1);
define('BLOG_ID_CURRENT_SITE', 1);

4. 清空所有缓存

  • 清空WordPress后台的插件缓存(如WP Rocket、W3 Total Cache等)。
  • 清除服务器端缓存(Nginx、Apache缓存或CDN缓存)。
  • 强制刷新浏览器缓存(Ctrl+F5)后重新测试。

5. 参考既有老站点配置

对比example.be/fr这类正常运行的站点:

  • 查看其wp_options表的siteurl、home字段值。
  • 核对wp_blogs表中对应的domain和path字段格式,确保新增站点的配置与之一致。

内容的提问来源于stack exchange,提问作者Frank

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.01 10:13:27