聯系信息

                        php寫iis日志分析程序

                        2022-12-11 09:11 By 致遠 294
                        當前位置: 企業網站建設 > ThinkPHP > php寫iis日志分析程序

                        程序其實很簡單,主要是正則查詢,這里就簡單說一下基本思路,有興趣的朋友可以自行嘗試看看。

                        首先,需要獲取日志文件夾下的日志文件。這里需要把日志文件夾指定到當前站點下,并給予iis用戶的讀取和寫入權限(方便遠程刪除)。如果還需要遠程查閱,還需要指定log的mime類型為text/plain。

                        主要代碼,遍歷日志文件夾:glob($path.'*.log');

                        遍歷iis文件夾并獲取列表

                        (我這里因為修改了日志字段,為了測試把之前的日志都刪除了,就這一條,應該是會把日志文件夾下的所有日志文件列舉出來的)

                        然后就是分析日志了。每個人可能有不同的分析方法和思路。我這里是按蜘蛛來分類的,并列舉其下圖片、樣式、js、html及404情況。

                        主要代碼,判斷該條日志中是否包含指定內容(注意過濾假蜘蛛,我這里是根據所有已知的蜘蛛ip段來匹配,匹配到了再判斷是否有滿足條件的內容):if(stristr($value,'.css'))   $spiders[$v][4]+=1;

                        分析日志,了解各個蜘蛛的訪問情況

                        值得注意的是,日志中會有很多假蜘蛛,這個對于我們的分析來說會有不良效果,所以你最好把假蜘蛛排除掉!

                        主要代碼,通過正則匹配到需要的時間、目標、狀態碼和ip地址等內容:preg_match_all('/([\d]{4}-[\d]{2}-[\d]{2} [\d]{2}:[\d]{2}:[\d]{2})/',$value,$time);

                        iis日志分析詳情

                        上圖是具體的訪問情況。需要說明的有幾點。

                        1、訪問ip這里是保留的一個功能,之前把假蜘蛛也記錄出來了,之所以有個查詢功能(調用ip138查詢,能判斷出是否蜘蛛)是怕判斷錯誤,導致真實蜘蛛也未納入統計。

                        2、當前這個站點綁定了很多二級域名,為了區分受訪的到底是哪個域名,在iis字段中加入了主機一列,并利用js實現查找、過濾進行分析。

                        最后,值得說明的事,因為采集、假蜘蛛、及真實用戶等數量可能非常龐大,導致iis日志文件太大太大,找個程序就有點卡殼了。為了盡可能減小iis日志的大小,我對用戶ip(包括假蜘蛛)做了限制,當訪問到一定數量后需要人工驗證。另外,把iis日志中的用戶名、服務器名稱、服務器ip、方法、協議狀態、字節、時長等字段都去掉了。


                        © 致遠 2022-12-11,原創內容,轉載請注明出錯:php寫iis日志分析程序

                        留下您的評論

                        > 人人爽人人澡人人高潮_免费无码国产V片在线观看_18禁裸乳无遮挡免费观看_国产99在线 | 欧美_中文字幕无码无码专区 特级AAAAAAAAA毛片免费 JIZZJIZZ无码中国在线观 最近中文字幕完整视频高清1 亚洲中文字幕久久精品无码A 久久久久久久久 18禁纯肉高黄无码动漫 国产清纯在线一区二区WWW 全部AV―极品视觉盛宴 99精品热这里只有精品 亚洲AV成人AV天堂