• 技术文章 >php教程 >php手册

    php IIS日志分析搜索引擎爬虫记录程序第1/2页

    2016-06-13 12:27:25原创290
    使用注意:
      修改iis.php文件中iis日志的绝对路径
      例如:$folder=”c:/windows/system32/logfiles/站点日志目录/”; //后面记得一定要带斜杠(/)。
      ( 用虚拟空间的不懂查看你的站点绝对路径?上传个探针查看!
      直接查看法:http://站点域名/iis.php
      本地查看法:把日志下载到本地 http://127.0.0.1/iis.php )
      注意:
      //站点日志目录,注意该目录必须要有站点用户读取权限!
      //如果把日志下载到本地请修改143行的网址为您网站的网址,此操作不是必要操作,不影响分析结果。
      //修改文件名称iis.php 需要同时修改对应代码 ctrl+h 把 iis.php全部替换成您要修改的文件名 否则程序运行出错。
      //如果iis日志文件过大,可能会导致程序超时!同时也不建议大家使用!
    以下是PHP源代码:
    [code]
    /*
    牛仔IIS日志蜘蛛爬行记录分析器 V1.1(PHP GB2312 版)
    作者:牛仔
    QQ:172379201
    Email:17gd@163.com
    */
    //===================================================
    header("content-type:text/html; charset=gb2312");
    //站点日志目录,注意该目录必须要有站点用户读取权限!
    $folder="C:/WINDOWS/system32/LogFiles/W3SVC1155699908/";//后面记得一定要带斜杠!
    $pagesize = 25;//设置分页显示条数!
    //=========================
    $type = addslashes($_GET['type']);
    if ($type)$type = base64_decode($type);
    $showfile = addslashes($_GET['showfile']);
    $page = addslashes($_GET['page']);
    if (!$page)$page=1;
    //============================
    //打开目录
    if (!$type){
    if (file_exists($folder))
    {
    $fp=opendir($folder);
    while(false!=$file=readdir($fp))
    {
    if($file!='.' &&$file!='..')
    {
    $file="$file";
    $arr_file[]=$file;
    }
    }
    if(is_array($arr_file))
    {
    for ($i=count($arr_file)-1;$i>=0;$i--)
    {
    $indexstr.="".date("Y-m-d",filectime($folder.$arr_file[$i]))."
    百度(Baidu)
    谷歌(Google)
    雅虎(yahoo)";
    }

    }
    closedir($fp);
    $html = indexhtml();
    $copy = mycopy();
    $html = str_replace("[showlog]",$indexstr,$html);
    $html = str_replace("[copy]",$copy,$html);
    echo $html;
    }else{
    echo "该日志目录不存在或权限不足,请检查设置!";
    exit();
    }
    }elseif ($type=='Baiduspider'){
    echo show($type,$folder,$showfile,$page,$pagesize);
    }elseif ($type=='Googlebot'){
    echo show($type,$folder,$showfile,$page,$pagesize);
    }elseif ($type=='yahoo'){
    echo show($type,$folder,$showfile,$page,$pagesize);
    }

    function show($type,$folder,$showfile,$page,$pagesize)
    {
    if ($type=='Baiduspider')
    {
    $title='百度';
    }elseif ($type=='Googlebot'){
    $title='谷歌';
    }elseif ($type=='yahoo'){
    $title='雅虎';
    }
    if ($type&&$folder&&$showfile)
    {
    if(file_exists($folder.$showfile))
    {
    $fp= fopen($folder.$showfile,"r");
    }else{
    echo "该日志文件不存在,请检查设置!";
    exit;
    }
    $j=0;
    $y=0;
    $t=0;
    $h=0;
    while (!feof($fp))
    {
    $str = fgets($fp);
    $str =iconv("UTF-8","GB2312//IGNORE",$str);
    if(strpos($str,$type))
    {
    $j++;
    $temp[].=$str;
    $tmpcount = explode(" ",$str);
    if ($tmpcount[11]==200)$t++;
    if ($tmpcount[11]==304)$h++;
    if ($tmpcount[11]==404)$y++;
    }
    }
    fclose($fp);
    $count = count($temp);
    if ($page==1)
    {
    $countshow=$count;
    $mynum = $count-$pagesize;
    }else{
    $countshow =$count-($page*$pagesize-$pagesize);
    $mynum = $count-$page*$pagesize;
    }
    $pagecount =ceil(count($temp) / $pagesize);
    if ($page>=$pagecount)
    {
    $mynum = $pagecount;
    }
    $m=0;
    for ($i=$countshow-1;$i>=$mynum;$i--)
    {
    $num = explode(" ",$temp[$i]);
    $show.="

    ".$num[0]." ".$num[1]."
    ".$num[9]."
    ".$num[5]."
    ".$num[11]."
    ";
    }
    unset($temp);
    $showpage = "每页 ".$pagesize." 条 当前".$page."/$pagecount";
    $showpage.=" 首页";
    if ($page!=1)
    {
    $showpage.=" 上一页";
    }
    if ($page!=$pagecount)
    {
    $showpage.=" 下一页";
    $weei = " 尾页";
    }
    $showpage.=$weei."";
    if ($show)
    {
    $html = pagehtml();
    $copy = mycopy();
    $htmltitle = "牛仔IIS日志蜘蛛爬行记录分析器-";//请保留,谢谢!
    $html = str_replace("[title]",$title,$html);
    $html = str_replace("[htmltitle]",$htmltitle,$html);
    $html = str_replace("[show]",$show,$html);
    $html = str_replace("[count]",$j,$html);
    $html = str_replace("
    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    上一篇:php二分法在IP地址查询中的应用 下一篇:phpmyadmin的安装与使用图文教程第1/2页
    Web大前端开发直播班

    相关文章推荐

    • php的二进制安全• ThinkPHP做文字水印时提示call an undefined function exif_imagetype()解决方法,• PHP查询登录中的sql注入• PHP二维数组排序的函数分享• mysql常识和基本操作

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网