mod_rewrite重新编码查询字符串参数

时间:2013-12-08 17:11:40

标签: apache mod-rewrite query-string url-encoding

我有以下mod_rewrite规则,它从请求中删除.html扩展名并将其替换为尾随/

# Handle requests to pages ending with .html
RewriteCond    %{REQUEST_URI} .*.html$
RewriteRule    (.*).html$ $1/ [R=301,QSA,L]

我发现如果我的查询参数包含已经编码的空格,则重定向正在被重新编码。因此,如果初始请求是针对“/ search-results.html?q=some%20string”,则会将其重写为“/ search-results /?q = some%2520string”

我可以给mod_rewrite另一个参数来阻止这种重新编码吗?

1 个答案:

答案 0 :(得分:1)

使用[NE]标志以避免重复编码。