将 domain.com?query_string=* 重定向到 domain.com

Redirect domain.com?query_string=* to domain.com

我有以下 url: domain.com/?query_string=some_variable

我需要所有 domain.com/?query_string=* 到 301 重定向到 domain.com

的请求

我试过以下方法:

RewriteCond %{QUERY_STRING}  ^query_string=$
RewriteRule (.*)  http://domain.com?  [R=301,L]

在上下文中:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

RewriteCond %{QUERY_STRING}  ^query_string=$
RewriteRule (.*)  http://domain.com?  [R=301,L]
</IfModule>

您需要将重定向规则保持在其他规则之前,并在正则表达式中匹配 ^query_string= 以允许 query_string=.

之后的任何内容

您可以使用这些规则:

DirectoryIndex index.php
RewriteEngine On
RewriteBase /

RewriteCond %{QUERY_STRING} ^query_string= [NC]
RewriteRule ^ %{REQUEST_URI}? [R=301,L,NE]

RewriteRule ^index\.php$ - [L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php [L]