本文实例讲述了php实现判断访问来路是否为搜索引擎机器人的方法。分享给大家供大家参考。具体分析如下:
很多时候我们需要对网站访客来路进行识别,针对真实用户与搜索引擎作不同动作实现,那么首先就需要判断是否为搜索引擎。
php判断方法非常简单,通过过滤$_SERVER[\'HTTP_USER_AGENT\'] 参数即可进行识别,以下是摘录某开源程序的相关源码:
private function getRobot() { if (empty($_SERVER[\'HTTP_USER_AGENT\'])) { return false; } $searchEngineBot = array( \'googlebot\'=>\'google\', \'mediapartners-google\'=>\'google\', \'baiduspider\'=>\'baidu\', \'msnbot\'=>\'msn\', \'yodaobot\'=>\'yodao\', \'youdaobot\'=>\'yodao\', \'yahoo! slurp\'=>\'yahoo\', \'yahoo! slurp china\'=>\'yahoo\', \'iaskspider\'=>\'iask\', \'sogou web spider\'=>\'sogou\', \'sogou push spider\'=>\'sogou\', \'sosospider\'=>\'soso\', \'spider\'=>\'other\', \'crawler\'=>\'other\', ); $spider = strtolower($_SERVER[\'HTTP_USER_AGENT\']); foreach ($searchEngineBot as $key => $value) { if (strpos($spider, $key)!== false) { return $value; } } return false; } public function isRobot() { if($this->getRobot()!==false) { return true; } return false; }
希望本文所述对大家的php程序设计有所帮助。
本文地址:https://www.stayed.cn/item/14095
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我