AEM Cloud中匹配空路径并保留查询参数的Mod Rewrite配置
AEM Cloud Dispatcher 根路径重写正确配置方案
核心逻辑梳理
- 地址栏的锚点(
#xxx)属于浏览器端内容,服务器根本接收不到,所以完全不用写对应规则,浏览器会自动保留锚点在地址栏,不影响后台内容转发。 - 查询参数不用手动捕获拼接,用
QSA标志就能自动把原参数追加到重写后的URL上。 - 直接访问域名(路径为空)和访问根路径(
/)可以用一条规则覆盖,不用分开写。
最终配置代码
# 根路径(含/或不含/、带查询参数)内部转发到/uk/home.html,保留查询参数 RewriteRule "^/?$" "/uk/home.html" [PT,QSA]
覆盖所有目标场景
www.mysite.com→ 后台转发到/uk/home.html,地址栏显示原域名www.mysite.com/→ 后台转发到/uk/home.html,地址栏显示原域名www.mysite.com?hello=world→ 后台转发到/uk/home.html?hello=world,地址栏不变www.mysite.com/?hello=world→ 后台转发到/uk/home.html?hello=world,地址栏不变www.mysite.com#something→ 浏览器自动保留锚点,后台转发到/uk/home.html,地址栏显示原URL
关键标志说明
PT:Pass Through,把重写后的路径传递给Dispatcher等后续模块,符合AEM Cloud的部署要求QSA:自动追加原查询字符串,省去手动处理参数的麻烦
内容的提问来源于stack exchange,提问作者John Little
相关产品推荐
相关产品推荐

