Сбор статистики сайта счетчиками посещений. Типы счетчиков.
Задача данного материала рассказать про различные типы счетчиков посещений и про основные принципы их работы. А также помочь Вам выбрать подходящий тип счетчика.
Анализ статистики сайта проводится на основе данных о посетителях сайта. Данные о посетителях собираются веб-сервером (и затем записываются в лог-файлы) или счетчиками посещений (и затем записываются в базы данных). В рамках данного материала рассмотрим принципы работы разных типов счетчиков.
Общий принцип.
Принцип работы всех счетчиков посещений заключается в выполнении внешней программы при загрузке страниц сайта. При загрузке счетчика выполняется внешняя программа, при этом ей передаются так называемые переменные окружения. В этих переменных хранится вся базовая информация о текущем посетителе сайта, в том числе:
- IP-адрес посетителя (REMOTE_ADDR);
- Браузер посетителя (HTTP_USER_AGENT);
- Адрес страницы, откуда пришел посетитель (HTTP_REFERER);
- Адрес страницы, куда пришел (REQUEST_URI);
- Параметры вызова страницы (QUERY_STRING).
Параметры вызова или QUERY_STRING передаются через знак вопроса ? после адреса страницы и разделяются знаком амперсанда &, например:
/cgi/test.php?i=34344&resolution=1024&color=32 |
Вызов внешней программы может быть осуществлен разными способами, самый распространенный способ использование картинки.
Счетчик посещений - картинка.
Страницы веб-сайта обычно состоят из текста и графики. Текст отформатирован с помощью специальных тэгов, а графика представляет собой совокупность картинок размещенных в правильных местах.
Картинка вставляется в страницу следующим образом:
... text of html page... <img src=http://www.myserver.com/img/picture.gif width=468 height=60> ... text of html page...Браузер отрисовывая страницу на Вашем экране, формирует запрос по адресу http://www.myserver.com/img/picture.gif и в ответ сервер посылает браузеру файл картинки. |
Важно! Принцип работы счетчика-картинки основан на предположении, что при просмотре Вашего сайта браузер пользователя автоматически подгружает все картинки, и соответственно загружает картинку счетчика. Тут нас подстерегает две основные проблемы:
- некоторые пользователи отключают загрузку картинок;
- роботы вообще не грузят картинок при сканировании сайтов.
Таким образом, мы не сможем посчитать пользователей с отключенной загрузкой картинок, и не сможем контролировать деятельность роботов на сайте.
Методика подсчета статистики на основе счетчика-картинки.
Вместо ссылки на картинку мы вставляем вызов внешней программы, которая "прикидывается" картинкой:
<img src=http://www.myserver.com/counter.php height=1 width=1>
Программа counter.php формирует файл картинки, который отдается браузеру. Таким образом, для браузера вызов программы выглядит как загрузка обычной картинки.
Картинка, которую формирует программа, может быть совершенной различной. Например, прозрачный GIF размером 1х1, или может быть картинка счетчика размером 88х31 с числами посещений сайта (всего просмотров сайта, сегодня просмотров, сегодня пользователей), или любая другая. |
Анализируя переменные окружения, программа получает IP-адрес посетителя и данные о браузере и записывает эту информацию в базу данных для последующего анализа. Однако для полноценной статистики нужна дополнительная информация. Для передачи дополнительной информации программе используют строку параметров вызова. Например, передача разрешения экрана пользователя упрощенно может выглядеть так:
<img src=http://www.myserver.com/counter.php?screen=1024 height=1 width=1>
Дополнительная информация о пользователе получается с помощью java-скрипта: реферер, экранное разрешение, глубина цвета, случайное число, информация о поставленной cookie и так далее. Именно поэтому при использовании счетчика-картинки Вам приходится вставлять на страницы сайта довольно внушительные коды счетчиков на java-скрипте.
С помощью счетчика-картинки мы можем очень хорошо собирать информацию о большинстве пользователей, однако "за бортом" остаются поисковые роботы и пользователи с отключенными картинками.
Счетчик посещений - программная вставка.
Большинство сайтов сейчас динамические - их страницы генерятся на лету по запросу посетителя сайта. Страницы динамических сайтов написаны с использованием языка программирования, в основном это PHP, ASP, JSP. То есть страницы сайта сами являются программами и имеют свои переменные окружения. Мы можем написать код на языке сайта, например PHP, который будет собирать информацию о посетителе и складывать ее в базу данных, но не выводить в результате работы никакой видимой информации. Для удобства вставки такого кода в страницы, его обычно оформляют отдельным файлом, а затем вставляют в страницы сайта.
Например, код счетчика программной вставки (PHP-Include) у CNStats выглядит примерно так:
... php-code ... include "/usr/www/users/www.myserver.com/cnstats/cnt.php"; ... php-code ... |
Так как код счетчика включен в код страницы, то есть гарантия, что все посетители сайта будут посчитаны и даже никоим образом этого не заметят. Однако и при использовании программной вставки, есть определенные недостатки:
- информацию о посетителе можно взять только из переменных окружения;
- сложность определения уникальности посетителя.
Счетчик посещений - программная вставка.
Идея такова - в страницы динамического сайта вставляется код программной вставки, который при выполнении будет выводить код счетчика посещения картинки! Что же получается?
- В момент генерации страницы вызывается код программной вставки и полученная из переменных окружения информация записываются в базу данных.
- В результате работы программной вставки на генерируемой странице появляется java-скрипт код счетчика-картинки.
- При просмотре страницы браузером срабатывает java-скрипт и вызывается счетчик-картинка с дополнительно собранной информацией.
- Дополнительная информация собранная java-скриптом об этом же посетителе дописывается в базу данных.
Система сбора статистики несколько усложняется (и не всегда комбинированный тип счетчика подходит), зато комбинированный способ - единственный вариант получить максимально полную информацию обо всех посетителях сайта. Будущее за комбинированными счетчиками!
Заключение.
Вы познакомились с основными типами счетчиков посещений. Надеемся, что данная информация будет полезна и поможет Вам при принятии решения о способе сбора статистики сайта.
И, напоследок, наши советы:
- используйте универсальные программные продукты, которые поддерживают различные типы счетчиков - это даст Вам возможность выбора;
- по возможности используйте комбинированный счетчик - это последнее достижение в плане сбора статистики.
Оставить комментарий
Комментарии
prislite programmu
v delfi udaenia konkretnix failov i pomogu opisat skript tak kak ponal. zaranee spasibo