.htaccess htaccess将?=的所有页面重定向到/

.htaccess htaccess将?=的所有页面重定向到/,.htaccess,apache2,.htaccess,Apache2,有人设法用以下内容索引页面: example.com/?ref=domain.com 页面的内容没有更改,但我不希望此url被索引 是否有办法将所有/?内容重定向到htaccess中? 我尝试了一些重定向条件,但是?是一个特殊的角色,这可能导致失败 谢谢 在httpd.conf中启用mod_rewrite,并将此代码放在.htaccess的DOCUMENT_ROOT下: Options +FollowSymLinks -MultiViews # Turn mod_rewrite on Rewr

有人设法用以下内容索引页面:

example.com/?ref=domain.com
页面的内容没有更改,但我不希望此url被索引

是否有办法将所有/?内容重定向到htaccess中? 我尝试了一些重定向条件,但是?是一个特殊的角色,这可能导致失败


谢谢

在httpd.conf中启用mod_rewrite,并将此代码放在.htaccess的DOCUMENT_ROOT下:

Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /

# query string is not empty
RewriteCond %{QUERY_STRING} !^$
# request URI is / then redirect to / and strip out query string
RewriteRule ^$ /? [L,R=301]

在httpd.conf中启用mod_rewrite,并将此代码放在.htaccess的DOCUMENT_ROOT下:

Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /

# query string is not empty
RewriteCond %{QUERY_STRING} !^$
# request URI is / then redirect to / and strip out query string
RewriteRule ^$ /? [L,R=301]

谢谢但是,我发现它可以将内部页面重定向到主页。这似乎效果更好:#重定向请求?RewriteCond%{THE_REQUEST}\?(.*)\HTTP[NC]RewriteRule。?{REQUEST_URI}?[R=301,L]你认为使用这个有什么问题吗?@Roger:我不确定哪些内部页面不起作用。请您指定,以便我们可以为这些页面添加例外情况(如果可能)。不过,您建议的代码也可以正常工作。谢谢。但是,我发现它可以将内部页面重定向到主页。这似乎效果更好:#重定向请求?RewriteCond%{THE_REQUEST}\?(.*)\HTTP[NC]RewriteRule。?{REQUEST_URI}?[R=301,L]你认为使用这个有什么问题吗?@Roger:我不确定哪些内部页面不起作用。请您指定,以便我们可以为这些页面添加例外情况(如果可能)。但是,您提出的代码也可以正常工作。