PHP统计nginx访问日志中的搜索引擎抓取404链接页面路径


Posted in PHP onJune 30, 2014

我在服务器上有每天切割nginx日志的习惯,所以针对每天各大搜索引擎来访,总能记录一些404页面信息,传统上我只是偶尔分析下日志,但是对于很多日志信息的朋友,人工来筛选可能不是一件容易的事情,这不我个人自己慢慢研究了一点点,针对谷歌、百度、搜搜、360搜索、宜搜、搜狗、必应等搜索引擎的404访问生成为一个txt文本文件,直接上代码test.php。

<?php

//访问test.php?s=google

$domain='https://3water.com';

$spiders=array('baidu'=>'Baiduspider','360'=>'360Spider',

'google'=>'Googlebot','soso'=>'Sosospider','sogou'=>

'Sogou web spider','easou'=>'EasouSpider','bing'=>'bingbot');

 

$path='/home/nginx/logs/'.date('Y/m/').(date('d')-1).'/access_www.txt';

 

$s=$_GET['s'];

 

if(!array_key_exists($s,$spiders)) die();

$spider=$spiders[$s];

 

$file=$s.'_'.date('ym').(date('d')-1).'.txt';

if(!file_exists($file)){

    $in=file_get_contents($path);

    $pattern='/GET (.*) HTTP\/1.1" 404.*'.$spider.'/';

    preg_match_all ( $pattern , $in , $matches );

    $out='';

    foreach($matches[1] as $k=>$v){

        $out.=$domain.$v."\r\n";

    }

    file_put_contents($file,$out);

}

 

$url=$domain.'/silian/'.$file;

echo $url;

好就这样了。没有什么高深的技术,只有动手写的过程。

PHP 相关文章推荐
php mssql 时间格式问题
Jan 13 PHP
PHP 字符串 小常识
Jun 05 PHP
推荐一本PHP程序猿都应该拜读的书
Dec 31 PHP
PHP日期函数date格式化UNIX时间的方法
Mar 19 PHP
php生成过去100年下拉列表的方法
Jul 20 PHP
微信红包随机生成算法php版
Jul 21 PHP
php 调用ffmpeg获取视频信息的简单实现
Apr 03 PHP
PHP框架Laravel中实现supervisor执行异步进程的方法
Jun 07 PHP
微信开发之获取JSAPI TICKET
Jul 07 PHP
PHP基于DateTime类解决Unix时间戳与日期互转问题【针对1970年前及2038年后时间戳】
Jun 13 PHP
PHP实现一个按钮点击上传多个图片操作示例
Jan 23 PHP
ThinkPHP5.1+Ajax实现的无刷新分页功能示例
Feb 10 PHP
PHP把JPEG图片转换成Progressive JPEG的方法
Jun 30 #PHP
PHP把小数转成整数3种方法
Jun 30 #PHP
php 无限级分类,超级简单的无限级分类,支持输出树状图
Jun 29 #PHP
php防止伪造的数据从URL提交方法
Jun 27 #PHP
编译PHP报错configure error Cannot find libmysqlclient under usr的解决方法
Jun 27 #PHP
jQuery+PHP+ajax实现微博加载更多内容列表功能
Jun 27 #PHP
支持生僻字且自动识别utf-8编码的php汉字转拼音类
Jun 27 #PHP
You might like
php设计模式 Interpreter(解释器模式)
2011/06/26 PHP
PHP 之 写时复制介绍(Copy On Write)
2014/05/13 PHP
php使用substr()和strpos()联合查找字符串中某一特定字符的方法
2015/05/12 PHP
微信支付开发动态链接Native支付
2016/07/12 PHP
PHP中trait使用方法详细介绍
2017/05/21 PHP
浅谈laravel aliases别名的原理
2019/10/24 PHP
通过MSXML2自动获取QQ个人头像及在线情况(给初学者)
2007/01/22 Javascript
优化网页之快速的呈现我们的网页
2007/06/29 Javascript
JSON 客户端和服务器端的格式转换
2009/08/27 Javascript
Javascript 中文字符串处理额外注意事项
2009/11/15 Javascript
javascript 函数调用的对象和方法
2010/07/01 Javascript
javascript之typeof、instanceof操作符使用探讨
2013/05/19 Javascript
jQuery实现列表的全选功能
2015/03/18 Javascript
2016年最热门的15 款代码语法高亮工具,美化你的代码
2016/01/06 Javascript
jquery动态添加文本并获取值的方法
2016/10/12 Javascript
Angular中实现树形结构视图实例代码
2017/05/05 Javascript
详解使用Vue Router导航钩子与Vuex来实现后退状态保存
2017/09/11 Javascript
ES6使用export和import实现模块化的方法
2018/09/10 Javascript
微信小程序如何获取手机验证码
2018/11/04 Javascript
vue和better-scroll实现列表左右联动效果详解
2019/04/29 Javascript
Vue关于组件化开发知识点详解
2020/05/13 Javascript
[02:01]2018完美盛典-开场舞《双子星》
2018/12/16 DOTA
Python def函数的定义、使用及参数传递实现代码
2014/08/10 Python
基于Python 的进程管理工具supervisor使用指南
2016/09/18 Python
Python基于回溯法子集树模板解决0-1背包问题实例
2017/09/02 Python
Django框架 querySet功能解析
2019/09/04 Python
python3获取url文件大小示例代码
2019/09/18 Python
python读取yaml文件后修改写入本地实例
2020/04/27 Python
Python多线程的退出控制实现
2020/08/10 Python
计算机毕业大学生推荐信
2013/12/01 职场文书
刘胡兰的英雄事迹材料
2014/02/11 职场文书
工地质量标语
2014/06/12 职场文书
三八节祝酒词
2015/08/11 职场文书
《7的乘法口诀》教学反思
2016/02/18 职场文书
2016年机关单位节能宣传周活动总结
2016/04/05 职场文书
创业计划书之校园超市
2019/09/12 职场文书