7

出于某种神秘的原因,Google 已将这两个地址都编入索引,它们指向同一页面:

/something/some-text-1055.html

/index.php?pg=something&id=1055

(临时通知 - 该网站自推出以来就有友好的网址,我不知道谷歌如何找到“index.php?”网址 - 只有在内容管理系统中有“不友好”的网址,这是受密码限制的)

我能做些什么来解决这种情况?(我有大约 1000 个双索引页面。)有人告诉我使用“disallow: index.php?” 在 robots.txt 文件中。对还是错?还有其他建议吗?

4

6 回答 6

10

您会惊讶于谷歌机器人在索引网站内容方面的普遍性和速度。再加上许多 CMS 系统创建了非预期的页面/链接,因此很可能在某些时候这些链接被暴露是最有可能的罪魁祸首。您的管理区域也可能没有您想象的那么安全,谷歌机器人就是这样通过的。

乖巧的,和google推荐的,这里要做的事情是

  1. 如果可能,创建从查询字符串样式 URL 到规范样式 URL 的 301 重定向。那就是你说“嘿,网络机器人/浏览器,以前在这个 URL 上的内容现在在这个另一个 URL 上”

  2. 阻止 robots.txt 中的查询字符串内容。这就像蜘蛛或其他自动程序“嘿,请不要看这些东西。这些不是您要查找的 URL”

  3. Google 显然允许您现在通过页面顶部的 <link /> 标记指定规范 URL。考虑添加这些。

至于行为端正的事情是否是“正确”的事情:谷歌排名……谁知道呢。只有“谷歌”知道他们的算法现在如何工作,以及将来如何工作,而谷歌,我的意思是一群工程师和高管,他们在搜索应该如何工作方面有着相互冲突的目标。

于 2009-03-13T20:55:39.087 回答
7

Google 现在提供了一种指定页面规范 URL 的方法。您可以在 HTML 中使用以下代码告诉 Google 您的规范网址:

<link rel="canonical" href="http://www.example.com/product.php?item=swedish-fish" />

您可以在他们关于该主题的博客文章中阅读更多关于 Google 上的规范 URL 的信息:http: //googlewebmastercentral.blogspot.com/2009/02/specify-your-canonical.html 根据博客文章 Ask.com, Microsoft Live Search 和 Yahoo! 都支持规范标签。

于 2009-03-13T22:56:10.153 回答
3

如果您使用站点地图生成器提交给搜索引擎,您也需要禁止它们。它们很可能是 Google 通过抓取您的文件夹和检查您的日志获得您的链接的地方。

于 2009-03-13T20:15:34.910 回答
3

最好检查已请求的 URI ( $_SERVER['REQUEST_URI']),如果是则重定向/index.php

于 2009-03-13T20:15:46.827 回答
1

更改 robots.txt 将无济于事,因为该页面已编入索引。

最好是使用永久重定向 (301)。

如果您想删除曾经被 Google 索引的页面,唯一的方法或多或少是让它返回 404 not found 消息。

于 2009-03-13T21:27:31.583 回答
1

您是否有可能将表单发布到类似的网址,而谷歌只是从源头获取它?

于 2009-03-13T23:06:18.367 回答