1
我有以下的mod_rewrite规则,它从请求剥离.html扩展名并用尾随替换它/mod_rewrite的重新编码的查询字符串参数
# 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?
http://httpd.apache.org/docs/current/rewrite/flags.html – Sumurai8
请注意,如果你想匹配一个点字面,你应该在你的正则表达式中使用'\ .',而不是''。 。尽管如此,这并不是问题所在。 – Sumurai8