1

谷歌选择了以下网址并对其进行了排名:

http://www.example.com/yyy/zzz-99.php?item_id=99&sort=1(item_id=99部分不应该存在)。

由于我发现了错误并修复了它,我在我的 htaccess 中添加了以下行:

RedirectPermanent /yyy/zzz-99.php?item_id=99&sort=1 http://www.example.com/yyy/zzz-99.php?&sort=1

但是,该重定向不起作用。关于我做错了什么的任何线索?

4

3 回答 3

3

我认为您甚至需要 mod_rewrite 来实现单个替换,因为它包含一个查询字符串。

如果启用了 mod_rewrite,您可以在根目录的 .htaccess 文件中尝试此操作:

Options +FollowSymLinks -MultiViews
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI}   ^/yyy/zzz-99\.php  [NC]
RewriteCond %{QUERY_STRING}  item_id=99&sort=1  [NC]
RewriteRule .*        /yyy/zzz-99.php?&sort=1?  [NC,L,R=301]

重定向

http://www.example.com/yyy/zzz-99.php?item_id=99&sort=1

http://www.example.com/yyy/zzz-99.php?&sort=1

对于静默映射,从 [NC,L,R=301] 中删除 R=301。

于 2013-03-14T00:29:10.130 回答
-1

检查 .htaccess 文件的名称。确保它以句点开头。

redirect 301 /index.html http://www.domain.com/index.html 
redirect permanent /index.html http://www.domain.com/index.html 
redirectpermanent /index.html http://www.domain.com/index.html
于 2013-03-14T00:16:07.203 回答
-1

在 .htaccess 中使用 301 重定向:

重定向 301 http://www.example.com/yyy/zzz-99.php?item_id=99&sort=1 http://www.example.com/yyy/zzz-99.php?sort=1

重定向 301 (from) (to)

于 2013-03-14T00:21:06.627 回答