Издательский дом ООО "Гейм Лэнд"СПЕЦВЫПУСК ЖУРНАЛА ХАКЕР #28, МАРТ 2003 г.

ЗНАЙ ВРАГА В ЛИЦО! - статистика посещений по-простому

 

Спецвыпуск Xakep, номер #028, стр. 028-080-2


ДВИЖОК: Google-шпион

АДРЕС: http://dimok.ru/notes/seo-stats-of-googlebot-visits.html

Ну а теперь извращенческий скрипт, предназначенный для подглядывания за роботом. С помощью функции eregi() этот скрипт определяет наличие строки "googlebot" в переменной HTTP_USER_AGENT. Если такая строка есть, значит нам пожаловал поисковый робот GOOGLE.COM. Сразу записываем в файл, когда приползал паук и как часто он у нас бывает. Если научиться отличать поисковые системы от обычных юзеров, изучить их поведение, то можно научиться искусственно накручивать рейтинг твоего сайта. Это называется клоакингом, о котором мы тебе расскажем в следующем номере.

ДВИЖОК: банальный счетчик

АДРЕС: http://www.evilwalrus.com/viewcode/80.php

Конечно, бывает нужно просто сосчитать, сколько раз запрашивали какую-то страничку. Тут небольшая процедура при каждом заходе на страничку открывает файл, достает оттуда число, добавляет единичку и снова закрывает. Этот пример интересен новым способом записи в файл из PHP. Функция exec() вызывает шелл, в котором перенаправляет стандартный вывод переменной счетчика в текстовый файл. Это, конечно, через зад, но так тоже можно.

ДВИЖОК: умный счетчик

http://www.evilwalrus.com/viewcode/385.php

А тут счетчик посерьезнее, он ведет базу данных с IP пользователей, которые ломятся на страничку. Значение увеличивается, только если айпишник новый. То есть счетчик считает только уникальные айпишники.

ДВИЖОК: потрошитель HTTP_USER_AGENT

АДРЕС: http://www.evilwalrus.com/viewcode/612.php

Этот скрипт расшифровывает аббревиатуры, записанные в переменной HTTP_USER_AGENT, и представляет их в понятном виде. То есть на экран выводится полное название браузера, операционной системы, язык. В качестве бонуса есть возможность увидеть количество цветов и разрешение на экране пользователя за счет вставок на JavaScript.

СЕССИИ

Одна из проблем подсчета юзеров в том, что они разбегаются. То есть бывает сложно отличить, посчитали ли мы этого юзера или еще не посчитали. Один из способов пометить посчитанных юзеров - сессия. Тогда каждому клиенту выдается по уникальному номеру. Подробнее теорию можешь прочитать здесь: http://www.ruscripts.com/php-articles/sessions.php. А простенький пример под названием "В который раз ты на этом сайте, задолбал ходить" ты найдешь здесь http://www.ruscripts.com/php-articles/sessions.php. Когда этот скрипт своим заходом на страницу задействует нового пользователя, он накручивает счетчик.

GD

Важно не только собирать статистику, но еще ее красиво отображать на страничке. Конечно, засосать инфу из файла статистики в HTML, как ты уже понял, для PHP не проблема. Однако на этом все не кончается. Ведь ты можешь еще строить графики на основе полученных данных статистики. GD - это библиотека графических функций, подробную инфу о которой ты найдешь на http://www.komkon.org/~denis/mydoc/gd.htm. А если коротко, то ты можешь работать с картинками jpg, gif, png. Можешь изменять их масштаб, обрезать, накладывать на них текст и геометрические фигуры, такие как: ломаная, точка, круг, прямоугольник. В HTML-заготовке, на месте PHP-скрипта c GD-функциями, появляется картинка. Она формируется во время запроса и отсылается в графическом формате.

Назад на стр. 028-080-1  Содержание  Вперед на стр. 028-080-3