Парсер логов apache

Иногда полезно посмотреть сколько раз заходил и какие страницы загружал поисковый бот. Например так я мониторю индексацию своих доров. Список доменов можно указать в файле domains.txt, либо скрипт сам найдёт все логи в папке. Для firstvds работать будет сразу, для других vds возможно придётся указать другую папку с логами.
$domains – фаил с доменами.
$ua – фаил с user агентами которые нужно парсить.

< ?php
# coding: utf-8
# author: Rushter
# site: http://klipner.ru
$domains = 'domains.txt';
$ua = file('ua.txt');
$ld = ('../../../logs/');
if (file_exists($domains)) {
    $tr = 1;
    $domains = file('domains.txt');
} else {
    $domains = glob($ld . "*.access.log");
}
 
foreach ($domains as $dom) {
    if (@$tr == 1) {
        $logs = file($ld . trim($dom) . ".access.log");
    } else {
        $logs = file($dom);
    }
    echo "<font color=\"Red\"><b>$dom</b><br />";
    echo "<ul>";
    foreach ($logs as $lg) {
        foreach ($ua as $uas) {
 
            if (preg_match("#.*".trim($uas).".*#", $lg)) {
                echo "<li type='1'>" . $lg . "</li>";
            }
        }
 
    }
    echo "</ul>";
}
 
?>

10 Ответов на “Парсер логов apache”

  1. webpsyhopat сказал:

    Отлично. Только он парсит тока основного индексирующего бота яши. Надо дописать чтоб список ботов брал тож из текстовика, тогда можно будет добавить нужных ботов по мере необходимости.

  2. webpsyhopat сказал:

    кстати у тебя шаб я вижу из бесплатных. почисти код шаблона от левых ссылок.
    Вот тут: Категория: Php, apache, logs, Seo, парсер – в двоеточии после слова «Категория» стоит неприкрытый бэк на wpthemes.ru

  3. admin сказал:

    Убрано всё уже давно,посмотрел ,что-то не нашёл ничего.
    Скрипт дополнил.

  4. webterrorist сказал:

    Кстати псих правду пишет, точно в дветочии такое идет:

    Категория

    поищи по ссылке в исходном коде

  5. rushter сказал:

    Нашёл,не там совсем искал.
    Спасибо.

  6. webpsyhopat сказал:

    Да не за что. поставь SEO bar для оперы и такую хрень будешь сразу видеть. ;)

  7. webterrorist сказал:

    нах та опера, мозилла рулит!)

  8. rushter сказал:

    Юзаю opera 10,обсуждению не подлежит :) .

  9. Vasich сказал:

    А если access.log более гига? По-моему не очень круто сразу вот так вот читать все file-ом. Подходит только для небольшой посещаемости.

  10. rushter сказал:

    Ну это для небольших файлов изначально предполагалось.

Оставить комментарий