PHP統計nginx訪問日誌中的搜尋引擎抓取404連結頁面路徑_PHP教程

來源:互聯網
上載者:User
我在伺服器上有每天切割nginx日誌的習慣,所以針對每天各大搜尋引擎來訪,總能記錄一些404頁面資訊,傳統上我只是偶爾分析下日誌,但是對於很多日誌資訊的朋友,人工來篩選可能不是一件容易的事情,這不我個人自己慢慢研究了一點點,針對Google、百度、搜搜、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;

好就這樣了。沒有什麼高深的技術,只有動手寫的過程。

http://www.bkjia.com/PHPjc/824747.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/824747.htmlTechArticle我在伺服器上有每天切割nginx日誌的習慣,所以針對每天各大搜尋引擎來訪,總能記錄一些404頁面資訊,傳統上我只是偶爾分析下日誌,但...

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.