Php 如何区分Google机器人访问和Bing机器人访问

Php 如何区分Google机器人访问和Bing机器人访问,php,seo,web-crawler,bing,Php,Seo,Web Crawler,Bing,我计划一个页面有两个版本(A/B)。 如果访问来自GoogleBot访问,则响应应为A版本 或 如果访问来自Bing机器人访问,则响应应为a或B版本。 我如何知道访问是来自PHP中的Google Bot还是Bing Bot 谢谢。首先通过以下步骤了解机器人程序的用户代理字符串: 接下来,使用PHP检查用户代理: if (strpos($_SERVER['HTTP_USER_AGENT'],"Googlebot")){ //Show Page A }else if(strpos($_SE

我计划一个页面有两个版本(A/B)。 如果访问来自GoogleBot访问,则响应应为A版本 或 如果访问来自Bing机器人访问,则响应应为a或B版本。 我如何知道访问是来自PHP中的Google Bot还是Bing Bot


谢谢。

首先通过以下步骤了解机器人程序的用户代理字符串:

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

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

但是为什么呢?机器人应该能看到人们看到的东西,这样他们就可以在搜索引擎上为网站编制索引。

这很容易做到,但为什么呢?机器人应该看到人类看到的东西——这就是他们的重点。这两个页面在关键词、标题、元、描述方面略有不同。。它们并不完全相同,谷歌也关心元关键词——不。搜索引擎优化骗局毁了这一切。这样做有什么真正的原因吗?您不应该尝试只为机器人提供一些精心编制的
bots
内容。它可能在几年前就起作用了,但不是今天,一些网站设法在搜索引擎上被禁止了一段时间(我听说大多数网站被谷歌禁止,不知道其他网站),因为如果访问者是机器人,就试图改变内容…@Sampo让我想起了2000年代早期的cgi脚本,它可以隐藏搜索引擎。你是对的,如果你为一个机器人显示完全不同的内容,SE将惩罚你。可能是另一个被误导的SEO尝试-sad,它的真实内容很重要。我的访问日志显示bing的这个用户代理:
Mozilla/5.0(兼容;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,而我只是没有任何记录。看在询问者的份上,我想如果他想确定的话,他可以检查这两种情况并假设必应。再过2分钟我就可以投票了。。。