Spesta — винтажная система статистики

Выкинул гугловский «Урчин» и поставил смирновскую «Спесту». Все эти Flash-графики у «Гугла» — это очень красиво, но мне не нравится смотреть по нескольку минут на процесс загрузки, а время дорого. Тем более, что большинство инструментов, которые предоставляет эта статистика, мне не нужны, я туда даже не заглядываю.

Четыре совета, если будете ставить «Спесту».

Во-первых, Дима писал её в бородатые времена, так что для работы на нормальном хостинге она требует влюченного register_globals и выключенного error_reporting. В Apache, в файле .htaccess это делается так:
php_flag error_reporting off
php_flag register_globals on
Во-вторых, откройте файл index.php, найдите строку 162 (там выводится значение ТИЦ, в этой строке должно быть слово cycounter), после этой строки добавьте:
echo "<b>Google</b>:<br /><br />
<script language='JavaScript'
src='http://www.mipagerank.com/mipagerank.php/$hosturl?d=2'></script>";
Теперь вы сможете видеть ещё и PageRank вашего сайта.

Совет номер три. Откройте counter.php, найдите строку 150, там определяется IP человека, который к вам зашёл. Определяется несколько… некорректно, да и считает всех с одного IP за одного человека. Чтобы хоть как-то поправить это положение, впишите туда следующее, вместо кода определения IP-адреса:
$ip = $_SERVER['REMOTE_ADDR'];
$fields = array
(
	'HTTP_X_FORWARDED_FOR', 'CLIENT_IP', 'HTTP_FROM', 'HTTP_CLIENT_IP', 'HTTP_CLIENTIP',
	'HTTP_CLIENT', 'HTTP_X_FORWARDED', 'HTTP_X_DELEGATE_REMOTE_HOST', 'HTTP_SP_HOST',
);

foreach ($fields as $field)
if (isset($_ENV[$field]))
{
	$ip .= ' '.$_ENV[$field];
	break;
}

$fields = array
(
        'HTTP_USER_AGENT', 'HTTP_ACCEPT_LANGUAGE', 'HTTP_ACCEPT_CHARSET',
        'HTTP_ACCEPT_ENCODING', 'HTTP_TE', 'HTTP_UA_CPU', 'HTTP_UA_OS', 'HTTP_UA_COLOR',
        'HTTP_UA_PIXELS', 'HTTP_UA_VOICE',
);

$uniq = '';
foreach ($fields as $field)
if (isset($_SERVER[$field])) $uniq .= '~'.$_SERVER[$field];

$ip .= ' ('.md5($uniq).')';
Четвёртый совет — поставьте flock. Нет, не настройку в конфигурационном файле, она ни на что не влияет. Если умеете — поставьте вызов flock после каждого fopen. Если не умеете — ну оставьте как есть.
4 декабря 2007 15:31

nudnik.ru (nudnik.ru)
4 декабря 2007, 16:53

Так, а похвалить?

bolk (bolknote.ru)
4 декабря 2007, 16:59

Нормально, выкинул статистику Гугла (sic!) и поставил «Спесту», это не похвала? :)

indeyets.livejournal.com (indeyets.livejournal.com)
4 декабря 2007, 17:22

это получается локальная считалка статистики… не интересно
гугл хорош как раз тем что оно считается где-то в другом месте и не отнимает ресурсов сервера
и техсаппортить его не нужно :-)

gofman.livejournal.com (gofman.livejournal.com)
4 декабря 2007, 18:19

да гавно у гугла статистика.

nudnik.ru (nudnik.ru)
4 декабря 2007, 19:09

Правильный вариант:

С отвращением выкинул гугловский «Урчин» и с радостью поставил смирновскую «Спесту».

bolk (bolknote.ru)
4 декабря 2007, 19:15

Индеец, ну, ты зайди к Диме на сайт, там есть демо вход, посмотри на gentime :)

Гофман, гавно, да.

Дим, всё так и было :)

openid.yandex.ru/users/arthas-1 (openid.yandex.ru/users/arthas-1)
4 декабря 2007, 22:44

"Спеста" у меня заглючила однажды на "Мастерхосте" на всех доменах разом. Видимо сразу после смены какого-то ПО на сервере. Позже Дима обновил её, я скачал поставил, результат тот же - ошибка 500. Так ничего и не понял, откуда вылезло и почему. Хотя статистка хорошая, пользовался до этого сбоя несколько лет. Может быть подскажете где копать?

bolk (bolknote.ru)
4 декабря 2007, 22:51

DirectoryIndex из .htaccess попробуйте убрать. Или по одному отключать строки в .htaccess.

openid.yandex.ru/users/arthas-1 (openid.yandex.ru/users/arthas-1)
5 декабря 2007, 09:00

Выяснился интересный момент. Прежняя версия "Спесты" (1.3F) оказывается уже работает на "Мастерхосте"! А вот последняя версия не работает. Причём достаточно поменять файл counter.php с версии 1.3 на новый с версии 1.4 и ошибка 500 опять вылезает. То есть есть какая-то проблема в файле counter.php. С .htaccess поигрался по всякому, не помогает.

bolk (bolknote.ru)
5 декабря 2007, 11:06

Гм. А эта ошибка 500 когда вылезает? Я думал при обращении к любому файлу «Спесты».

openid.yandex.ru/users/arthas-1 (openid.yandex.ru/users/arthas-1)
5 декабря 2007, 11:27

Ошибка 500 вылазит при обращении только к двум файлам - counter.php и deny.php. Со всеми остальными файлами проблем никаких. Мне это тоже показалось несколько странным.

bolk (bolknote.ru)
5 декабря 2007, 13:30

Интересно как. А попробуйте комментировать строку за строкой в deny.php (файл-т о маленький)? Может удасться выяснить что даёт сбой.

recoder.livejournal.com (recoder.livejournal.com)
6 декабря 2007, 12:10, ответ предназначен bolk (bolknote.ru):

http://www.aboutnico.be/index.php/google-analytics-air-beta-sign-up/ ?

bolk (bolknote.ru)
6 декабря 2007, 12:38, ответ предназначен recoder.livejournal.com:

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

khotty (openid.yandex.ru/users/khotty)
7 февраля 2008, 21:03

Удалил все строки из .htaccess
Теперь всё работает.
Вопрос -- нафига они были нужны?

bolk (bolknote.ru)
11 февраля 2008, 14:42

Чтобы правила rewrite не применялись и чтобы настройки PHP были определённые.

Ваше имя или адрес блога (можно OpenID):

Текст вашего комментария, не HTML:

Кому бы вы хотели ответить (или кликните на его аватару)