Home php教程 php手册 PHP版iis日志分析程序

PHP版iis日志分析程序

Jun 21, 2016 am 08:57 AM
iis

说明: 将日志文件放在网站根目录,并改名为log.log。演示:http://www.jzxue.com/tools/iislog/ http://www.jzxue.com/tools/iislog/demo.gif

/*******************************************************
*功能:iis日志分析,分析出访问IP总数,搜索引擎抓取次数
*说明:
*       将日志文件放在网站根目录,并改名为log.log。
*演示:http://www.jzxue.com/tools/iislog/
*       http://www.jzxue.com/tools/iislog/demo.gif
*作者:blackli,建站学整理
*问题:搜索引擎蜘蛛地址不准确,尤其是google蜘蛛地址,国内流行的地址列
*       表存在相当大的误差,能力有限,不能够解决这个问题。有兴趣的可以参考
*       下面的网址.
*参考:http://www.seonewthing.com/googleBotCheck.aspx
*       http://googlewebmastercentral.blogspot.com/2006/09/how-to-verify-googlebot.html
*******************************************************/

        //打开日志文件
        $DOCUMENT_ROOT = $_SERVER['DOCUMENT_ROOT'];
        $fp = fopen("$DOCUMENT_ROOT/log.log",'rb');
        if ( !$fp )
        {
                echo '打开文件失败';
                exit;
        }

        //分析每行日志
        $num_ip = 0;    //访问IP总数
        $ip = array();    //IP数据数组,其中ip[$i][0]为IP地址、ip[$i][1]为该地址出现次数
        while ( !feof($fp) )
        {
                $line = fgets($fp,1001);
                if ( substr($line,0,1) == '#' )
                {
                        //获取日志生成时间
                        if ( substr($line,0,5) == '#Date' )
                        {
                                $date_info = explode(' ',$line);
                                //echo '日志生成时间:'.$date_info[1].'  '.$date_info[2].'';
                        }
                }
                else
                {
                        //获取访问IP
                        if ( $line == '' ) continue;
                        $ip_info = explode(' ',$line);

                        for ( $j = $num_ip-1, $having_ip = false; $j >= 0 ; $j -- )
                        {
                                if ( $ip[$j][0] == $ip_info[6] )
                                {
                                        $having_ip = true;
                                        $ip[$j][1] ++ ;
                                        break;
                                }
                        }
                        if ( $having_ip == false )
                        {
                                $ip[$num_ip][0] = $ip_info[6];
                                $ip[$num_ip][1] = 1;
                                $num_ip ++;
                        }
                }
        }

        //获取搜索引擎蜘蛛访问次数
        //baidu、google蜘蛛地址列表
        $baiduSpider = array('220.181','159.226','202.108','61.135.');
        $googleBot = array('74.125.','209.85.','66.102.','64.233.','64.249','209.85.');

        $num_Spider = $num_googleBot = 0;
        for ( $i = 0; $i         {
                //计算百度蜘蛛访问次数
                for ( $j = 0 ; $j                 {

                        if ( substr($ip[$i][0],0,7) == $baiduSpider[$j] )
                        {
                                $num_Spider += $ip[$i][1];
                                continue;
                        }
                }
                //计算google蜘蛛访问次数
                for ( $j = 0 ; $j                 {
                        if ( substr($ip[$i][0],0,7) == $googleBot[$j] )
                        {
                                $num_googleBot += $ip[$i][1];
                                continue;
                        }
                }
        }

        //echo '百度蜘蛛请求'.$num_Spider.'次
';
        //echo 'google蜘蛛请求'.$num_googleBot.'次
';
        fclose($fp);
?>



iis日志分析-Powered by jzxue




       

日志生成时间


       

                共有IP的请求.

                百度蜘蛛请求次.

                google蜘蛛请求次.
       

       

                IP地址列表:

                                        for ( $i = 0 ; $i                         {
                                echo $ip[$i][0].'     '.$ip[$i][1].'次.
';
                        }
                ?>
       

       
Powered by 建站学




 



Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot Article Tags

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

How to install nginx1.10.1 reverse proxy in Windows to access IIS website How to install nginx1.10.1 reverse proxy in Windows to access IIS website May 23, 2023 pm 05:40 PM

How to install nginx1.10.1 reverse proxy in Windows to access IIS website

Process cannot access file error fix on Windows 11/10 Process cannot access file error fix on Windows 11/10 May 12, 2023 pm 07:10 PM

Process cannot access file error fix on Windows 11/10

Can iis be used on linux? Can iis be used on linux? Mar 23, 2023 am 09:24 AM

Can iis be used on linux?

How to solve the problem when the php station uses iis with garbled characters but apache is fine? How to solve the problem when the php station uses iis with garbled characters but apache is fine? Mar 23, 2023 pm 02:48 PM

How to solve the problem when the php station uses iis with garbled characters but apache is fine?

How to open iis application pool How to open iis application pool Apr 09, 2024 pm 07:48 PM

How to open iis application pool

How to solve iis cannot start How to solve iis cannot start Dec 06, 2023 pm 05:07 PM

How to solve iis cannot start

How to generate URL from html file How to generate URL from html file Apr 21, 2024 pm 12:57 PM

How to generate URL from html file

iis cannot start solution iis cannot start solution Oct 24, 2023 pm 03:04 PM

iis cannot start solution

See all articles