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

如何编写同时支持路径与查询字符串的.htaccess RewriteRule

解决.htaccess中保留任意查询字符串的RewriteRule配置问题

你需要在RewriteRule的标志里加上QSA(Query String Append),这是Apache mod_rewrite专门用来保留原URL查询字符串的核心参数。

修改后的规则应该是:

RewriteRule ^page/?$ page.php [L,QSA]

规则说明

  • QSA标志会自动把原URL中所有查询参数(不管参数名是什么)追加到目标URL的查询字符串里。比如访问https://example.com/page?keyword=battery&sort=asc&pagenum=1,会被转发到page.php?keyword=battery&sort=asc&pagenum=1,完全保留所有参数。
  • L标志表示这是最后一条匹配的规则,避免后续规则干扰(和你原来的配置逻辑一致)。

和现有规则的兼容性

你之前配置的content/2/about_us转page.php的规则可以和这个共存,只需确保规则顺序合理——把更具体的规则(比如带路径参数的content/...)放在前面,通用的page规则放在后面,避免匹配优先级冲突。

基础检查事项

  • 确认Apache服务器已开启mod_rewrite模块
  • 网站根目录的.htaccess文件需具备读写权限,且服务器配置中的AllowOverride需设置为All或包含FileInfo,才能让Rewrite规则生效

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.11 17:20:27