htaccess 将位置参数重定向到基本 URL

htaccess 将位置参数重定向到基本 URL

如果 URL 包含特殊参数(URLEmail中包含参数)则重定向到页面的基本 URL,不带任何参数。

例如:

http://example.com/accounts/daily/ybk/[email protected]

http://example.com/accounts/daily/ybk/

答案1

为了匹配查询字符串,您需要使用RewriteCond(mod_rewrite) 指令并与QUERY_STRING服务器变量进行匹配。例如,在您的根.htaccess文件中尝试以下内容:

RewriteEngine On
RewriteCond %{QUERY_STRING} Email=
RewriteRule (.*) /$1? [R=301,L]

对于包含查询字符串中任何位置的所有 URL Email=,301 重定向到减去查询字符串的相同 URL。

替换末尾?RewriteRule将从重定向 URL 中删除查询字符串。或者,您可以QSD在 Apache 2.4+ 上使用该标志。

如果您之前测试过错误的 301,请确保清除浏览器缓存。

更新:对于特定的 URL(包括Email=开始查询字符串):

RewriteEngine On
RewriteCond %{QUERY_STRING} ^Email=
RewriteRule ^(accounts/daily/ybk/)$ /$1? [R=301,L]

答案2

mod_rewrite模块应该能够帮助您。您将条件和重写规则写入 .htaccess 文件中。

参考:使用 .htaccess 重写规则

相关内容