2014-01-06 63 views
1

我在Joomla站点中有一些重复页面。重复页面301重定向更改目标网址

例子

/80游戏

/80的游戏吗?开始= 12

/80的游戏吗?开始= 20

我做了301重定向在我.htcaccess为第一个工作正常。

我为/ 80的游戏

Redirect 301 /80-games http://www.teach-this.com/esl-games 

但对/ 80游戏重定向?开始= 12

的网址更改为http://www.teach-this.com/esl-games?start=12

应该我重定向是什么/ 80-游戏?start = 12

不知何故问号导致我的目标网址发生变化。

感谢

保罗

+0

的?是给予webserver(get方法)的参数的开始。它实际上不是URL的一部分,因此也传递给新的URL。 – Lexib0y

+0

检查这些帖子:http://stackoverflow.com/questions/10726439/remove-query-string-during-a-301-redirect和http://stackoverflow.com/questions/3457022/mod-rewrite-remove-query -string-from-url – Lexib0y

+0

感谢您的链接,我尝试了建议的答案,但他们没有工作。 – user3160546

回答

1

你应该使用mod_rewrite因为你不能使用mod_alias规则操作QUERY_STRING

把这个代码在你DOCUMENT_ROOT/.htaccess文件:

RewriteEngine On 
RewriteRule ^80-games/?$ http://www.teach-this.com/esl-games? [R=301,L,NC] 

注意?在所使用原始URL中剥离出任何现有QUERY_STRING目标URI的结束。

+0

做了一个更正,你现在可以测试吗? – anubhava

+0

我在使用中添加了## Mod_rewrite下的代码。在我Joomla.htcaccess但问题没有消失。有任何想法吗? – user3160546

+1

确保这是* .htaccess中的**第一条规则**,并在另一个浏览器中对其进行测试以避免301缓存问题。最后还要确保规则具有带'?'的'http://www.teach-this.com/esl-games?'。 – anubhava