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

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

复制代码 代码如下:

<?php
//访问test.php?s=google
$domain='http://www.jb51.net';
$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;

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

时间: 2024-10-24 00:16:32

PHP统计nginx访问日志中的搜索引擎抓取404链接页面路径_php实例的相关文章

10分钟精通Nginx访问日志分析统计

简介 很多个人站长在搭建网站时使用nginx作为服务器,为了了解网站的访问情况,一般有两种手段: 使用CNZZ之类的方式,在前端页面插入js,用户访问的时候触发js,记录访问请求. 利用流计算.或离线统计分析nginx的access log,从日志中挖掘有用信息. 两种方式各有优缺点: CNZZ使用起来比较简单,各种指标定义清楚.但这种方式只能记录页面的访问请求,像ajax之类的请求是无法记录的,还有爬虫信息也不会记录. 利用流计算.离线计算引擎可以支持个性化需求,但需要搭建一套环境,并且在实时

日志服务+流计算+RDS 统计网站访问日志

本期分享专家:黄莉娟,具有多年前端开发经验,曾就职于天基,在阿里云从事大数据产品.日志服务.消息产品的技术支持,喜欢研究新技术分享新产品.我的口号"我就爱玩新产品!别叫我停下来" 众所周知,在阿里云所有的产品里,很多产品不需要写代码也能做出炫酷的demo,操作简单,容易上手.最近流计算开始公测,所谓世间万事万物,我们都要挑点来尝尝,拿它做个什么demo捏,在思考了四分之一柱香之后,我决定写一个先有鸡还是先有蛋的故事. 是的,写个自己统计自己访问日志的网站,是不是为了做demo完全不要节

《ELK Stack权威指南(第2版)》一3.1 Nginx访问日志

第3章 场 景 示 例 前面虽然介绍了几十个Logstash插件的常见配置项,但是过多的选择下,如何组合使用这些插件,依然是一部分用户的难题.本章将列举一些最常见的日志场景,演示针对性的组件搭配,希望能给读者带来启发. 本章介绍的场景包括:Nginx访问日志.Nginx错误日志.Postfix日志.Ossec日志.Windows系统日志.Java日志.MySQL慢查询日志.Docker容器日志. 3.1 Nginx访问日志 访问日志处理分析绝对是使用ELK stack时最常见的需求.默认的处理方

Linux定时切割Nginx访问日志并删除指定天数前的日志记录

说明: 操作系统:CentOS 站点1:bbs .111cn.net 站点2:sns .111cn.net Nginx安装路径:/usr/local/nginx Nginx配置文件路径:/usr/local/nginx/conf/nginx.conf 站点1配置文件路径:/usr/local/nginx/conf/vhost/bbs.111cn.net.conf 站点2配置文件路径:/usr/local/nginx/conf/vhost/sns.111cn.net.conf 目的: 1.对站点1

nginx访问日志并删除指定天数前的日志记录配置方法_nginx

说明: 操作系统:CentOS 站点1:bbs.jb51.net 站点2:sns.jb51.net Nginx安装路径:/usr/local/nginx Nginx配置文件路径:/usr/local/nginx/conf/nginx.conf 站点1配置文件路径:/usr/local/nginx/conf/vhost/bbs.jb51.net.conf 站点2配置文件路径:/usr/local/nginx/conf/vhost/sns.jb51.net.conf 目的: 1.对站点1和站点2的n

nginx访问日志,错误日志参数说明

访问日志[Access.log] '$remote_addr $remote_user [$time_local] "$request" $http_host' '$status $upstream_status $body_bytes_sent "$http_referer"' '"$http_user_agent" $ssl_protocol $ssl_cipher $upstream_addr' '$request_time $upstre

尽量让搜索引擎抓取和索引更多内容

SEO们经常头疼的一个问题,没有收录.索引就无从谈排名.尤其对达到一定规模的网站来说,使网站充 分收录是个颇令人费神的SEO技术,当页面达到比如说几十万,无论网站架构怎么设计.多么优化,100%收录都是不可能的,只能尽量提高收录率. 但有时候怎么阻止搜索引擎收录也可能成为一个问题,最近越来越成为问题.需要阻止收录的情况如保密信息.复制内容.广告链接等.过去常用的阻止收录方法包括密码保护.把内容放在表格后面.使用JS/Ajax.使用Flash等.今天看到Google网管博客一篇文章,这些方法都不保

了解robots.txt的用法 优化搜索引擎抓取和索引

通过给网站设置适当的robots.txt对Google和百度seo优化的作用是很明显的.WordPress博客网站也一样. 我们先看看robots.txt是什么,有什么作用? robots.txt是什么? 我们都知道txt后缀的文件是纯文本文档,robots是机器人的意思,所以顾名思义,robots.txt文件也就是给搜索引擎蜘蛛这个机器人看 的纯文本文件.robots.txt是搜索引擎公认遵循的一个规范文 档,它告诉Google.百度等搜索引擎哪些网页允许抓取.索引并在搜索结果中显示,哪些网页

你如何看待支付宝转账信息被搜索引擎抓取?

今天上微博看到一条很让人震惊的信息,不看还真不知道,一看吓了一大跳,支付宝转账信息既然被搜索引擎抓取了.有人会问到,这是怎么回事呢? 支付宝转账信息爆光 一开始笔者也不太相信,但看按照月光博客的方法在百度搜索" site:shenghuo.alipay.com ",看到的收录真让人吃惊,如下图吧.笔者特意找了一条收录的信息,由于这条收录的在首页,很容易就看到了,我也特意点击了百度快照看了一下,点击进去,里面的个人付款信息都能看到,按理说这是属于个人隐私信息,支付宝应该知道的,不能让蜘蛛