ThinkPHP6记录蜘蛛爬取日志的方法

下面thinkphp框架教程栏目将给大家介绍ThinkPHP 6是怎么记录百度等蜘蛛爬取日志,希望对需要的朋友有所帮助!

thinkphp6记录百度蜘蛛日志:

在控制器的父类如IndexBase中写入以下代码,所有前端控制器继承这个控制器

public function initialize() { parent::initialize(); // TODO: Change the autogenerated stub if ($this->Config[\’web_status\’] == 0) { // 判断是否关闭网站 die(\’网站已经关闭\’); } $this->baiduLog(); } protected function baiduLog() { $useragent = strtolower($_SERVER[\’HTTP_USER_AGENT\’]); $url = $this->request->controller() . \”/\” . $this->request->action(); $param = input(\”param.\”,\”\”,\”htmlspecialchars\”); $url = (string) url($url,$param); $ip = get_real_ip(); $title = \”\”; if (strpos($useragent, \’googlebot\’) !== false){ $title = \’Google\’; } elseif (strpos($useragent, \’baiduspider\’) !== false){ $title = \’Baidu\’; } elseif (strpos($useragent, \’msnbot\’) !== false){ $title = \’Bing\’; } elseif (strpos($useragent, \’slurp\’) !== false){ $title = \’Yahoo\’; } elseif (strpos($useragent, \’sosospider\’) !== false){ $title = \’Soso\’; } elseif (strpos($useragent, \’sogou spider\’) !== false){ $title = \’Sogou\’; } elseif (strpos($useragent, \’yodaobot\’) !== false){ $title = \’Yodao\’; } elseif (strpos($useragent, \’googlebot\’) !== false){ $title = \’Google\’; } elseif (strpos($useragent, \’baiduspider\’) !== false){ $title = \’Baidu\’; } else {// $title = $useragent; // 不怕数据大的话可以取消注释,记录所有访问日志 } if (!empty($title)) { BaiduLog::create([\”title\”=>$title,\”href\”=>$url,\”ip\”=>$ip]); } }

更多关于云服务器域名注册虚拟主机的问题,请访问西部数码官网:www.west.cn

赞(0)
声明:本网站发布的内容(图片、视频和文字)以原创、转载和分享网络内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-62778877-8306;邮箱:fanjiao@west.cn。本站原创内容未经允许不得转载,或转载时需注明出处:西部数码知识库 » ThinkPHP6记录蜘蛛爬取日志的方法

登录

找回密码

注册