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. Если не умеете — ну оставьте как есть.

16 комментариев

Сирены «Титана»

Моё прежнее рабочее место (44.14КиБ)

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

10 комментариев