Kwert-soft.ru

IT Софт для ПК
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Access log что это

Анализ лог файлов сайта

Анализ лог файлов поможет в процессе оптимизации сайта на этапе поиска программных ошибок, которые мешают продвижению и могут даже стать причиной попадания сайта под фильтр. Лог файлы подразделяются на два типа: документы ошибок и посещений, соответственно error.log и access.log, о которых я сегодня и расскажу.

Для начала анализа надо подключить логи на хостинге, что можно в несколько кликов сделать в панели управления, после чего фиксация посещения сайта и ошибок на нём при визитах посетителей и ботов будет отображаться в лог файлах, расположенных в корне домена. Для их просмотра открываем ftp-соединение с сервером через Total Commander и видим возле папки public_html (на Joomla)файлы логов, открыть которые в свою очередь можно нажав F4 и выбрав текстовой редактор.

Error.log

Этот файл показывает ошибки, возникшие при визите на сайт, и часто помогает найти косяки, которые не видны взгляду простого смертного снаружи сайта. Так в строке ошибок мы видим –

  1. Время возникновения ошибки,
  2. IP-адрес посещения,
  3. Описание ошибки,
  4. Адрес проблемного web-документа.

В основном анализ error.log интересен тем, что позволяет увидеть, какие документы сайта недоступны, что поможет быстро устранить недоработки по программной линии без банального тыканья пальцем в небо. Лично мне анализ лог файлов помог вывести блог из-под АГС (нервных просят не смотреть – не этот), так как там было полно программных ошибок.

Access.log

В этом документе можно посмотреть, что творится на сайте при посещениях ботами и пользователями, то есть какие HTTP-статусы отдаёт сайт при визитах, с какого адреса пришли на какую страницу, с какого адреса IP и какие боты. С помощью access.log можно отследить активность роботов и увидеть, как они читают web-документы, то есть access я бы назвал более широкоформатным дополнением к error.log.

Для тех, кто не в танке предлагаю перед анализом логов ознакомиться с HTTP-статусами, иначе пользы от напряжения ума и глаз не будет, а упростить задачу по анализу поможет бесплатная программа Awstats, которую можно поставить в панели управления практически любого хостинга.

Конечно, сидеть сутками и изучать внутренность файлов посещений и ошибок не стоит, но как часть анализа сайта сие деяние необходимо, ибо оно часто помогает понять за 5 минут то, что было тайной за семью печатями очень долго и создавало проблемы и продвижению сайта и, как следствие, заработку на нём.

Если Вы хотите полностью проверить сайт и узнать его основные характеристики + посмотреть теги ресурса, объём текста, количество обратных ссылок, историю изменения параметров и прочее, то проверить сайт можно на сервисе prlog.ru и это будет отличным дополнением к анализу логов.

Дмитрий здравствуйте! Целый день убила на то, чтобы найти хоть какую-то информацию о Error.log Везде настолько мизерно написано, что ничего не понятно. У вас более менее доходчиво. А вы не могли бы мне помочь расшифровать ошибки? У меня проблемы с сайтом начались и я не знаю, что и где исправляется.

Читать еще:  Самоучитель ms access 2020

Весь конечно файл я не смогу привести, но хотя бы немного.

Парсинг access.log апача

Как то раз у меня возникла необходимость написать скрипт, который анализирует access.log веб сервера apache. Самому писать времени не было и хотел найти что-нибудь готовое. Но ничего подходящего не нашел и пришлось писать самому. Вот решил поделиться своими наработками.
Собственно опишу общий алгоритм для данной задачи, который каждый уже сможет заточить под свои нужды при необходимости.

Итак, для начала вспомним что же из себя представляет файл access.log. А выглядит он следующим образом:

193.34.12.132 — — [20/Oct/2011:12:46:08 +0400] «GET /scripts/fancyzoom.min.js HTTP/1.1» 200 4435 «http://kropus.amarox.ru/» «Mozilla/5.0 (Windows NT 5.1; rv:7.0.1) Gecko/20100101 Firefox/7.0.1»
193.34.12.132 — — [20/Oct/2011:12:46:08 +0400] «GET /bitrix/js/main/core/css/core_window.css?1318570950 HTTP/1.1» 200 44471 «http://kropus.amarox.ru/» «Mozilla/5.0 (Windows NT 5.1; rv:7.0.1) Gecko/20100101 Firefox/7.0.1»
193.34.12.132 — — [20/Oct/2011:12:46:08 +0400] «GET /bitrix/templates/kropus/components/bitrix/menu/kropus/script.js?1315557673 HTTP/1.1» 200 469 «http://kropus.amarox.ru/» «Mozilla/5.0 (Windows NT 5.1; rv:7.0.1) Gecko/20100101 Firefox/7.0.1»

Как вам наверное уже известно формат записи логов можно менять настройками апача. Выше представлен формат, который устанавливается по умолчанию. В нем можно увидеть IP адрес клиента, дату и время, протокол, размер запроса, строку запроса, браузер и ОС.

Если описать кратко, то сам алгоритм разбора лога представляет из себя обработку по отдельности каждой строки файла. При обработке строки формируется массив, Каждое поле которого содержит один элемент: адрес, длину запроса, протокол и т.д. Затем уже каждый по необходимости делает с этими данными то, что ему захочется: заносит в базу данных, сразу выводит в браузер, собирает статистику, в общем решает нужную ему задачу. И так повторяется для каждой строки или для нужного количества строк.

А теперь подробнее:
Чтобы разобрать каждую строку сначала будет удобнее занести их все в один массив, где каждый элемент это строка из файла. Сделать это можно проще простого функцией file

$file_array = file(‘путь к файлу’);

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

Вот примерно так выглядит функция для получения строки
($fp – указатель на файл, полученный ранее функцией fopen)

function get_log_string()
<
if (feof($fp))
<
return false;
>
$bits=»;

Таким образом, мы считываем по одному биту до тех пор пока не достигнем конца строки. Если достигнут конец файла то возвращаем false.

Эту функцию необходимо зациклить
while ($string = $get_log_string())
<
//Разбираем полученную строку $string
//И производим с ней нужные действия
>

Читать еще:  База данных ломбард access

Теперь собственно переходим непосредственно к самому разбору строки.
Я сделал это с помощью функции preg_match и регулярных выражений. Задаем шаблон

Получаем в итоге

preg_match ($pattern, $line, $result)

$pattern – наш шаблон
$line – строка для разбора
$result – массив, в который будут записаны полученные результаты

Для удобства массив можно привести в удобочитаемый формат

$formated[‘ip’] = $result [1];
$formated[‘ > $formated[‘user’] = $result [3];
$formated[‘date’] = $result [4];
$formated[‘time’] = $result [5];
$formated[‘timezone’] = $result[6];
$formated[‘method’] = $result [7];
$formated[‘path’] = $result[8];
$formated[‘protocol’] = $result[9];
$formated[‘status’] = $result[10];
$formated[‘bytes’] = $result[11];
$formated[‘referer’] = $result[12];
$formated[‘agent’] = $result[13];

Вот собственно и все. Мы получили массив с данными из строки лога. Теперь с этими данными можно делать то, что вам необходимо в конкретном случае.

Как читать логи сервера

Что такое логи?

Краткая справка из Википедии:

Файл регистрации, протокол, журнал или лог (англ. log) — файл с записями о событиях в хронологическом порядке. Различают регистрацию внешних событий и протоколирование работы самой программы — источника записей (хотя часто всё записывается в единый файл). Например, в лог-файлы веб-сервера записывается информация, откуда пришёл тот либо иной посетитель, когда и сколько времени он провел на сайте, что там смотрел и скачивал, какой у него браузер и какой IP-адрес у его компьютера.

Для чего нужны логи?

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

Как включить запись логов?

Обычно, по умолчанию, для экономии дискового пространства ведение логов на хостинге выключено.

Приведу включение записи на примере панели управления хостингом Таймвеб.

В панели управления переходим во вкладку «Логи», выбираем из выпадающего сайта нужный (если их несколько) и активируем ползунок «Лог доступа (access_log)»

Примерно через час, когда накопится достаточное количество записей, переходим в директорию сайта и скачиваем файл.

Открываем в любом текстовом редакторе (на примере второй столбец, с адресом сайта закрашен).

Разберем для примера строку № 49

site.ru – адрес нашего сайта

85.93.93.102 – IP-адрес посетителя, с датой и вренем посещения, а также его часовой пояс

GET – тип запроса, возможен вариант POST, чем отличается GET и POST можно почитать в сети, если говорить упрощено, GET – получение данных, POST – отправка, например авторизация

page/2 – к какой странице было обращение, в нашем случае это site.ru/ page/2

HTTP/1.0 – протокол, по которому пришел посетитель

200 – код ответа сервера, более подробную информацию о кодах состояния можно прочитать в Википедии — https://ru.wikipedia.org/wiki/Список_кодов_состояния_HTTP

80195 – количество байт полученных посетителем

Linguee Bot (http://www.linguee.com/bot; bot@linguee.com) – данные о посетителе, тут также может быть информация о браузере, операционной системе, устройстве и так далее

Читать еще:  Access для чайников скачать

Даже при беглом взгляде видно, что с адреса 85.93.93.102 идет множество запросов, обращение было как раз по чрезмерной нагрузке на сайт, как только адрес бота Linguee Bot был запрещен, нагрузка практически сразу вернулась в норму.

И все за несколько минут, благодаря логам; без них на выяснение причины понадобилось бы гораздо больше времени. Также были замечены обращения по адресам, содержавшим вставки типа — xd0xbexd1x82xd0xb7 …

Кто занимается «лечением» сайтов, знает, что подобные запросы могут создавать запредельные нагрузки на сервер.

Иногда самые простые методы – самые действенные, а защита на уровне сервера самая надежная.

Access log что это

Serpstat использует файлы cookie для обеспечения работоспособности сервиса, улучшения навигации, предоставления возможности связаться с командой поддержки, а также маркетинговых активностей Serpstat.

Нажав кнопку «Принять и продолжить», вы соглашаетесь с Политикой конфиденциальности

How-to– Читать 7 минут –28 ноября 2018

Логи сайта, как правило, имеют ценность для технического аудита веб-площадок и могут быть чрезвычайно полезными для SEO-оптимизации.

Анализ логов сервера:

  • показывает, сколько краулингового бюджета теряется и где именно;
  • помогает выявить и корректно настроить возникшие ошибки 404, 500 и прочие;
  • позволяет найти страницы, которые редко сканируются или игнорируются поисковиками;
  • дает еще множество возможностей.

В данном случае браузер понимает, что https — это протокол, your_site_address.com — название сервера, а example.html — имя файла.

Название сервера преобразуется в IP-адрес через сервер доменных имен. Затем HTTP-запрос GET отправляется на веб-сервер через соответствующий протокол для запрашиваемой страницы или файла, при этом HTML возвращается в браузер, а затем интерпретируется для форматирования видимой страницы на экране. Каждый из этих запросов записывается в log file веб-сервера.

Проще говоря, процесс выглядит так: посетитель совершает переход по странице, браузер передает его запрос серверу, на котором расположен веб-сайт. Сервер выдает запрошенную пользователем страницу в ответ. И после этого фиксирует все происходящее в log-файле.

Все, что вам нужно, чтобы проанализировать сканирование сайта поисковой системой, — экспортировать данные и отфильтровать запросы, сделанные роботом, например, Googlebot. С помощью браузера и диапазона IP это сделать удобнее.

Сам лог-файл представляет собой сырую информацию, сплошной текст. Но правильная обработка и анализ дают неограниченный источник информации.

Структура журнала в конечном счете зависит от типа используемого сервера и конфигураций. Например, анализ логов Apache будет отличаться от анализа логов Nginx. Но есть несколько общих атрибутов, которые почти всегда содержатся в файле:

  • IP-адрес запроса;
  • дата и время;
  • география;
  • метод GET / POST;
  • запрос к URL;
  • код состояния HTTP;
  • браузер.

Пример записи, включая приведенные выше данные:

111.11.111.111 — — [12 / Oct / 2018: 01: 02: 03 -0100] « GET / resources / whitepapers / retail-whitepaper / HTTP / 1.1 « 200 »-« »Opera / 1.0 (совместимый; Googlebot / 2.1; + http://www.google.com/bot.html)

Дополнительные атрибуты, которые иногда можно увидеть, включают:

  • имя хоста;
  • запрос / клиентский IP-адрес;
  • загруженные байты;
  • затраченное время.
Ссылка на основную публикацию
Adblock
detector