使用PHP检测爬网(搜索引擎的访问)

时间:2012-06-01 16:28:51

标签: php seo search-engine user-agent

当搜索引擎访问网页时,get_browser()功能和$_SERVER['HTTP_USER_AGENT']会返回什么内容?

此外,当搜索引擎抓取网页时,PHP提供的其他可能证据是什么?

2 个答案:

答案 0 :(得分:1)

  • get_browser()函数尝试确定浏览器的功能(在数组中),但由于non standard user-agents而没有过多计算;相反,对于一个认真的应用程序,建立自己的。

  • $_SERVER["HTTP_USER_AGENT"]是一个长字符串“描述”用户的浏览器,可用作上述函数中的第一个参数(可选); 提示:使用此提示来发现用户的浏览器而不是get_browser()本身!还要为缺少用户代理做好准备!这个字符串的一个例子是:
    Mozilla / 5.0(Macintosh; U; PPC Mac OS X; en)AppleWebKit / 418(KHTML,与Gecko一样)Safari / 417.9.3

  • follows the rules根据您网站根目录中必须存在的 robots.txt 存储的信息访问您网页的搜索引擎或机器人或蜘蛛或抓取工具。 如果没有robots.txt, spider可以抓取整个网站,只要它在您的网页中找到链接;如果你有这个文件,你可以编程,以告诉蜘蛛 来搜索; 注意:此规则仅适用于“好”蜘蛛,而不适用于bad ones

答案 1 :(得分:1)

get_browser()& $_SERVER['HTTP_USER_AGENT']将返回Useragents,它应如下所示:

Google:

  • Mozilla / 5.0(兼容; Googlebot / 2.1; + http://www.google.com/bot.html)
  • Mozilla / 5.0(iPhone; U; CPU iPhone OS 4_1,如Mac OS X; en-us)AppleWebKit / 532.9(KHTML,类似Gecko)版本/ 4.0.5 Mobile / 8B117 Safari / 6531.22.7(兼容; Googlebot) -Mobile / 2.1; + http://www.google.com/bot.html)
  • 的Googlebot图像/ 1.0

Bing:

  • Mozilla / 5.0(兼容; bingbot / 2.0; + http://www.bing.com/bingbot.htm)
  • Mozilla / 5.0(Windows NT 6.1; WOW64)AppleWebKit / 534 +(KHTML,与Gecko一样)BingPreview / 1.0b
  • msnbot / 2.0b(+ http://search.msn.com/msnbot.htm)
  • msnbot-media / 1.1(+ http://search.msn.com/msnbot.htm)

雅虎:

- >要完全控制(并限制)抓取,请不要使用 robots.txt ,使用 .htaccess http.conf 规则。 (好的爬虫在robots.txt中有一半的时间不给你关于你的禁止规则的f ***)