2
我遇到了一个问题,试图从apache中查询字符串的末尾删除尾部斜线。从查询字符串中删除尾部斜杠Apache
我已经制定了以下重写规则,现在让网址和查询字符串全部小写:
RewriteEngine On
RewriteMap lc int:tolower
RewriteCond %{REQUEST_URI} ^[^A-Z]*[A-Z].* [OR]
RewriteCond %{QUERY_STRING} ^[^A-Z]*[A-Z].*
RewriteRule^${lc:%{REQUEST_URI}}?${lc:%{QUERY_STRING}} [L,R=301]
我已尝试添加:
RewriteCond %{QUERY_STRING} (.+)/$
RewriteRule^%1 [R=301,L]
但它打破了网站。我一直在寻找一种方法来做到这一点,但还没有提出任何解决方案。我尝试了this post的答案,但他们没有奏效。
我需要这样做的原因是因为我们的应用程序防火墙在url中查找“ID”,并且如果有任何非字母数字字符,那么它会阻止请求。在Apache请求命中服务器之后,防火墙就实现了。
希望有更多Apache Rewrite规则经验的人可以帮助我。提前致谢。
谢谢你的工作完美! – Yamaha32088