【问题标题】:How to differentiate between Google Bot visit and Bing Bot visit如何区分 Google Bot 访问和 Bing Bot 访问
【发布时间】:2012-04-25 23:30:38
【问题描述】:

我计划一个页面有 2 个版本(A/B)。 如果访问来自 Google Bot 访问,则响应应该是 A 版本 或者 如果访问来自 Bing Bot 访问,则响应应该是 B 版本。 我如何知道访问是来自 PHP 中的 Google Bot 还是 Bing Bot?

谢谢。

【问题讨论】:

  • 很容易做到 - 但为什么呢?机器人应该看到人类所看到的——这就是它们的重点。
  • 这两页在关键字、标题、元数据、描述方面略有不同......它们并不完全相同
  • 谷歌是否关心元关键字 - 不。 SEO 骗局毁了这一点。
  • real 这样做的理由吗?你不应该尝试给机器人一些特制的bots only 内容。几年前它可能有效,但今天不行,一些网站设法被搜索引擎禁止了一段时间(我听说被谷歌禁止的最多,不知道其他人)因为试图更改内容如果访客是机器人...
  • @Sampo 让我想起了 2000 年初的旧 cgi 脚本,这些脚本会隐藏搜索引擎。你是对的,如果你为机器人显示完全不同的内容,SE 会惩罚你。

标签: php seo web-crawler bing


【解决方案1】:

首先通过访问此处了解机器人的用户代理字符串是什么:http://www.robotstxt.org/db.html

接下来使用 PHP 检查用户代理:

if (strpos($_SERVER['HTTP_USER_AGENT'],"Googlebot")){
    //Show Page A 
}else if(strpos($_SERVER['HTTP_USER_AGENT'],"MSNBOT")){
    //Show Page B
}

但是为什么呢?机器人应该看到人们看到的内容,以便他们可以在搜索引擎上为网站编制索引。

【讨论】:

  • 可能是 另一个 被误导的 SEO 尝试 - 可悲的是,它的真实内容很重要。
  • 我的访问日志显示此用户代理用于 bing:Mozilla/5.0 (compatible; bingbot/2.0; +http://www.bing.com/bingbot.htm),因此他可能需要检查而不是 MSNBOT。
  • @drew010 我认为这不对,但我搜索了我列出的那个页面并找不到“bingbot”,但我找到了 MSNBot。我检查了谷歌,bingbot 再次被列为 MSNbot,所以我把它放在代码中。所以你可能是对的。
  • 如果我没记错的话有bingbot访问我们的服务器。
  • @TimWithers 我刚刚仔细检查了我的日志文件,此时我没有任何 MSNBOT 代理,但我确实看到 bing 机器人来自像 msnbot-65-52-108-12.search.msn.com 这样的主机名他们仍然使用 MSNBot,我只是没有任何记录。为了提问者的缘故,我想他可以同时检查两者,如果他想确定的话,就假设是 bing。再过 2 分钟,我就可以再次投票了……
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-24
  • 2017-07-10
  • 2016-11-30
  • 2022-01-19
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多