[英]htaccess remove the parameter from url
我试图从网址中删除某些网址参数。 这些参数对正在显示的内容没有任何影响,但谷歌有一堆索引。
我想将它们重定向到基本URL。
以下是示例。
来自www.myexamplesite.com/?start=10
致: www.myexamplesite.com
来自www.myexamplesite.com/folder1/?start=10
致: www.myexamplesite.com/folder1
来自www.myexamplesite.com/folder2/?start=10
致: www.myexamplesite.com/folder2
实际上我不需要任何带参数的url,所以我想知道是否有办法从url中捕获并重定向所有其他可能的参数,并且只允许我将在htaccess中指定的一些选定的参数。
例子:
来自www.myexamplesite.com/?param1=10
致: www.myexamplesite.com
来自www.myexamplesite.com/?param1=10¶m2=20
致: www.myexamplesite.com
来自www.myexamplesite.com/folder1/?param1=10
致: www.myexamplesite.com/folder1
来自www.myexamplesite.com/folder1/?param1=10¶m2=20
致: www.myexamplesite.com/folder1
但对于param3应该是我选择的:
从www.myexamplesite.com/folder1/?param3=10
保持不变: www.myexamplesite.com/folder1/?param3=10
更新
我实际上已经实现了一个解决方案,但我的主要问题是它总是重定向到主页而不是相应的REQUEST_URI ......
这是我有的:
RewriteCond %{QUERY_STRING} .
RewriteCond %{QUERY_STRING} !^item=
RewriteCond %{REQUEST_URI} !^/manage
RewriteRule .? http://www.myexamplesite.com%{REQUEST_URI}? [R=301,L]
您可以使用此规则param3=
所有查询字符串,除非在其中找到param3=
。
RewriteEngine On
RewriteCond %{QUERY_STRING} .
RewriteCond %{QUERY_STRING} !(?:^|&)param3= [NC]
RewriteRule ^ %{REQUEST_URI}? [R=301,L,NE]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.