我试图从放入的任何网址中删除任何?s =的实例。
这是我正在使用的当前重写规则,但它只是抛出500错误,不知道为什么?
RewriteCond %{QUERY_STRING} ^s=$
RewriteRule ^(.*)$ $1 [L,R=302,QSD]
答案 0 :(得分:1)
您可能使用较旧的Apache版本,因为只有较新的Apache版本QSD
支持标记2.4+
。在较旧的Apache版本上,这将导致500 internal server error
。
您可以改用此规则:
RewriteCond %{QUERY_STRING} ^s=$
RewriteRule ^ %{REQUEST_URI}? [L,R=302]
目标网址中的 ?
将丢弃现有的查询字符串。