.htaccess - 从 URL 中删除一个查询参数

.htaccess - Remove one query parameter from URL

我有一个 URL 看起来像这样:

https://www.example.com/about-us?stage=Stage&utm_source=abc&utm_medium=xyz

我只想删除 stage=Stage 部分。

我尝试了以下代码:

RewriteCond %{QUERY_STRING} ^stage=Stage$
RewriteRule (.*) $Stage? [R=permanent]

但它似乎只有在 URL 是:

时才有效
https://www.example.com/about-us?stage=Stage

没有其余参数。

如何让除了stage=Stage参数之外的其他参数通过?

您可以在 .htaccess 的顶部使用此规则:

RewriteCond %{QUERY_STRING} ^(.*&)?stage=Stage(?:&(.*))?$ [NC]
RewriteRule ^ %{REQUEST_URI}?%1%2 [L,R=301,NE]