«Спеста» — винтажная система статистики, часть II.

Ещё несколько советов по работе со «Спестой», предыдущая пачка — в первой части статьи.

Совет пять. Судя по коду, «Спеста» иногда способна пропустить какую-то часть хитов (кстати, у «Spesta 2» тот же недостаток). Для слабопосещаемого сайта это не слишком важно, для сильнонагруженных станет серьёзной проблемой. Для того, чтобы поправить ситуацию, открываем файл counter.php, ищем строки, содержащие «SP_fr ($COUNT_FILE)» и «SP_fw ($COUNT_FILE, $content)». Заменяем их на следующие куски кода (первую найденную строку — на первый, вторую — на второй):
$fp = fopen($COUNT_FILE, 'a+');
flock($fp, LOCK_EX);
fseek($fp, 0);
$conts = fread($fp, filesize($COUNT_FILE));
ftruncate($fp, 0);
fseek($fp, 0);
fwrite($fp, $content);
fclose($fp);
Совет номер шесть. Открываем все PHP-файлы последовательно и в каждый, в начало PHP-кода ставим нижеприведённый кусок. Файл mailto.php удаляем.
$s_addurl = "";
5 декабря 2007 16:21

yakovis.com (yakovis.com)
5 декабря 2007, 18:09

А не проще ли выложить собственный дистрибутив? :) Чем вот такие правки по одной публиковать?

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

Его ж поддерживать надо, отвечать на письма читателей и т.д. Да и за отправную точку лучше взять Spesta 2.

not-available.livejournal.com (not-available.livejournal.com)
5 декабря 2007, 21:13

Проверка?

bolk (bolknote.ru)
5 декабря 2007, 22:12, ответ предназначен not-available.livejournal.com:

Мусоришь мне комменты, даже удалять не буду, чтобы все знали, что я порицаю!

isk.livejournal.com (isk.livejournal.com)
5 декабря 2007, 22:13

совет 5.1
после выполнения совета 5 вдумчиво читаем http://spectator.ru/technology/php/flock_workaround

bolk (bolknote.ru)
5 декабря 2007, 22:42, ответ предназначен isk.livejournal.com:

Искандер, что тут читать? Думаешь, я знаю о flock меньше? Дима просто не умел тогда обращаться с flock. Что же до неработы flock на «NFS and many other networked file systems», FAT и возможно некорректной работы под multithread ISAPI, то меня это мало волнует — много ты видел блогов, установленных с такими условиями?

И даже в этом случае (если не удасться сделать flock), данные *потеряются* *точно* *так* *же* как при последовательном чтении/записи в немодифицированной «Спесте».

skurudo.livejournal.com (skurudo.livejournal.com)
1 января 2008, 08:16, ответ предназначен bolk (bolknote.ru):

А можно рекомендации конкретно по Spesta2? Дело в том, что далеко не везде включен register_globals ;-(

bolk (bolknote.ru)
1 января 2008, 16:03, ответ предназначен skurudo.livejournal.com:

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

bolk (bolknote.ru)
6 января 2008, 22:08, ответ предназначен skurudo.livejournal.com:

Как же она неаккуратно написана. Автор двигался в правильном направлении, но как-то… недотянул. Всё-таки я переоценил своё желание делать хоть что-то на праздники. Возможно, смотреть буду после 9-10-го.

А может и завтра посмотрю. Править по-крупному не буду, только те же правки, что и в original Spesta.

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

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

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