我该如何处理所有这些重复的内容?

时间:2011-07-14 01:31:16

标签: mod-rewrite duplicate-removal

该网站有Joomla。它有event_booking,允许人们注册课程。谷歌索引了课程页面。除日期外,每个页面都相同。我需要把它们从索引中删除。

网址的格式为:

http://www.example.com/index.php?option=com_dtregister&controller=event&task=options&Itemid=0&eventId=1377

我如何301将这些重定向到已经编入索引的真实页面:

http://www.example.com/register-class

或者我应该以其他方式修复重复内容?

1 个答案:

答案 0 :(得分:0)

<link rel="canonical" href="REAL_URL_HERE"/>用于重复的动态内容。

有用的链接:

不幸的是,我不能说你是否也应该使用301重定向来复制这些重复的URL - 关于你有哪些其他重复的URL这个问题不够明确。


<强>更新 此规则会将评论中提供的所有3个网址(仅限那些,完全匹配)重定向(301永久重定向)到http://www.example.com/register-class

RewriteEngine On
RewriteBase /

RewriteCond %{QUERY_STRING} =controller=validate&task=email&no_html=1&eventId=1339 [OR]
RewriteCond %{QUERY_STRING} =controller=validate&task=email&no_html=1&eventId=1332 [OR]
RewriteCond %{QUERY_STRING} =controller=validate&task=email&no_html=1&eventId=1382
RewriteRule ^rider-training-course-registration$ http://www.example.com/register-class? [NC,R=301,L]

这个会将URL从Question重定向到相同的目标URL(在上面添加它):

RewriteCond %{QUERY_STRING} =option=com_dtregister&controller=event&task=options&Itemid=0&eventId=1377
RewriteRule ^index\.php$ http://www.example.com/register-class? [NC,R=301,L]

这些规则需要放在网站根文件夹中的 .htaccess 中。如果放在别处,可能需要进行一些调整。