RedirectMatch 301 删除 URL 参数

RedirectMatch 301 Removing URL Parameters

我的服务器 apache 中有一个带有重定向的文件 .conf,我想用参数重定向一个 url。一个例子是这样的:

https://example.com/presente/decoracao/teu-sorriso?PageSpeed=noscript

我需要将其重定向到同一页面,如下例所示:

https://example.com/presente/decoracao/teu-sorriso

在我的 .conf 文件中,我尝试了以下代码但没有成功:

RedirectMatch 301 /presente/decoracao/teu-sorriso$ /presente/decoracao/teu-sorriso?

我不能使用来自 .htaccess 的重定向,也不能使用 Apache RewriteRule method.Even 研究,研究和尝试,到目前为止没有任何结果。提前致谢!

您不能使用 Redirect 指令将 URL 重定向到 query string,因为它与 ?PageSpeed=noscript 不匹配。您需要使用 Mod-rewrite

假设 mod-rewrite 模块在您的服务器上启用,您可以在 Apache 配置或 htaccess

中使用如下内容
RewriteEngine on

RewriteCond %{QUERY_STRING} ^PageSpeed=noscript$ [NC]
RewriteRule ^/?presente/decoracao/teu-sorriso/?$ /presente/decoracao/teu-sorriso? [L,R=301]