4

我在使用 mod_rewrite apache 的 htaccess 文件中花费超过 9 个参数时遇到问题,例如,如果我传递参数 $ 10 = "something" mod_rewrite 传递参数 $ 1 的值。有什么解决方案吗?

4

2 回答 2

8

答案很简单:你不能

http://httpd.apache.org/docs/current/mod/mod_rewrite.html

您唯一能做的就是将一些参数组合为一个,然后稍后在脚本中对其进行解析。

当然,您可以尝试将您的模式分成 2 条规则,因此一条规则匹配 5 或 6 个参数,然后第二条规则匹配其余的(这将起作用,因为规则是一一执行的),但这并不总是有效(真的取决于实际的重写规则,它有多复杂)并且需要很好地了解你在做什么。

于 2012-06-11T14:40:57.503 回答
2

RewriteRule 反向引用:这些是 $N (0 <= N <= 9) 形式的反向引用,它提供对模式的分组部分(在括号中)的访问,从 RewriteRule 受当前 RewriteCond 条件集的约束。 .

资料来源:http ://httpd.apache.org/docs/2.2/mod/mod_rewrite.html#rewritecond

于 2012-06-11T14:39:55.233 回答