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

如何通过.htaccess将指定子域名页面重定向到主域名对应页面

.htaccess子域名指定路径重定向配置

原配置失效原因

  • %{REQUEST_URI} 变量仅包含域名后的路径部分,不携带域名信息,因此你写的匹配规则永远不会命中。

正确配置

首先确保Apache已开启mod_rewrite模块,且站点配置中AllowOverride参数设置为All,之后在.htaccess中写入以下规则:

RewriteEngine On

# 匹配spb、ekb两个指定子域名
RewriteCond %{HTTP_HOST} ^(spb|ekb)\.example\.com$ [NC]
# 匹配/blog/、/projects/开头的请求路径
RewriteCond %{REQUEST_URI} ^/(blog|projects)/ [NC]
# 重定向到主站对应路径,携带后续参数
RewriteRule ^(.*)$ https://example.com/$1 [R=301,L]

规则说明

  • 如果你仅需要重定向根目录路径(仅spb.example.com/blog/、ekb.example.com/projects/这类根路径生效,子路径不重定向),将第二个RewriteCond修改为:
    RewriteCond %{REQUEST_URI} ^/(blog|projects)/$ [NC]
    
  • [NC] 参数代表不区分大小写匹配
  • 测试阶段建议将R=301改为R=302,避免浏览器缓存错误的永久重定向规则,验证生效后再改回301
  • 配置修改后需要清空浏览器缓存再测试

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 11:27:03