Как написать свой счетчик посещаемости
Javascript счетчик посещений для веб-сайта
Я пытаюсь закодировать счетчик посещений для веб-сайта. В качестве предпочтения, не обязательно, я пытаюсь использовать Javascript для этого. В файле html веб-сайта я читаю число из файла javascript и выводю его. Как я могу сделать его «count» каждый раз, когда происходит попадание?
Извините за такой неопределенный вопрос. Я на правильном пути, идя по этому поводу? Любые советы, код или ссылки будут высоко оценены.
4 ответа
- Как добавить уникальный счетчик посещений для веб-сайта?
Я хочу сделать уникальный счетчик посещений для сайта Php. Я не хочу увеличивать число, обновляя страницу. Это не похоже на простой счетчик посещений. Я попробовал несколько счетчиков, но они увеличивают свое количество, обновляя страницу. Есть какие-нибудь идеи .
Как создать счетчик посещений (visitor counter) для каждой страницы сайта MVC? И хранить информацию в базе данных MS SQL. То же самое, что и stackoverflow, используемый на каждой странице. Пожалуйста, покажите мне пример. Спасибо тебе
Используя Javascript, вы можете подсчитывать только хиты текущего пользователя, потому что вам нужно сохранить их в файле cookie или в технологии на стороне клиента.
Для более точного способа вы должны использовать язык на стороне сервера и, возможно, добавить механизм хранения, такой как база данных, чтобы он работал.
Я предлагаю вам начать здесь Php для начинающих ссылка может быть старой, но она охватывает все основы, которые вам нужно знать, чтобы создать свой счетчик.
Javascript — это язык сценариев на стороне клиента, он работает на клиентском ПК. Сам счетчик должен быть реализован на стороне сервера, так как вы должны считать http запросов. Код javascript, однако, может запросить у сервера обновление счетчика на странице html, отображаемой на компьютере клиента.
Javascript не может изменить файл на сервере или клиентском компьютере без проблем с безопасностью. Возможно, вы также захотите загрузить другую страницу в виде пустого изображения с помощью PHP или другого языка сценариев на стороне сервера. Это может затем обновить счетчик в файле без каких-либо проблем.
Большинство сайтов со счетчиком, который я вижу с большим количеством трафика, используют счетчик времени и используют ajax, чтобы получить реальное число при загрузке.
Преимущества этого в том, что у вас нет статического счетчика, и вы получаете реальное число после обновления, но, как уже было сказано ранее, только с javascript это невозможно
Похожие вопросы:
Мне пришлось написать счетчик посещений страниц для нашего сайта. (только для клиентов) Я знаю, что некоторые клиенты злоупотребляют моим счетчиком, и они написали заявление, которое попало на.
В принципе, я хочу создать глобальный счетчик посещений веб-страницы, а затем отображать изображение для каждого посещения. Таким образом, если 10 человек посетили страницу, 10 случайных изображений.
Как реализовать счетчик посещений сайта пользователями в asp.net mvc
Я хочу сделать уникальный счетчик посещений для сайта Php. Я не хочу увеличивать число, обновляя страницу. Это не похоже на простой счетчик посещений. Я попробовал несколько счетчиков, но они.
Как создать счетчик посещений (visitor counter) для каждой страницы сайта MVC? И хранить информацию в базе данных MS SQL. То же самое, что и stackoverflow, используемый на каждой странице.
Я часто посещаю определенную страницу в интернете, чтобы посмотреть счетчик посещений, но мой визит считается каждый раз, и это раздувает количество фактических посещений. Есть ли способ посетить.
Я работаю над школьным проектом, который содержит счетчик посещений с использованием файлов cookie. Раньше я делал счетчики, просто передавая увеличивающееся значение в переменные в бобах при каждом.
Я создаю веб-сайт с главной страницей. Я хочу создать счетчик посещений, чтобы записать количество посетителей, и я нашел код и поместил его на свою главную страницу. Код выглядит следующим образом.
Пожалуйста, помогите мне .. Как реализовать счетчик посещений веб-сайта с помощью APPENGINE java JDO. (Просмотров нескольких пользователей одновременно) Я попробовал простой класс jdo с count.
Обзор решений для анализа посещаемости сайта
Любому владельцу интернет-ресурса необходимо знать, насколько он информативен, удобен в работе и популярен у посетителей. А значит, как минимум, нужно получить представление о посещаемости ресурса, о наиболее востребованных его разделах, а также о том, не уходят ли с сайта посетители, не достигнув цели (то есть по причине того, что нужную им страницу не удалось загрузить или на нее непросто попасть). Тем же, кто связывает со своим проектом далекоидущие коммерческие планы, необходимо иметь больше информации о сайте и его посетителях. Например, следует учитывать аудиторию — то есть идентифицировать пришедших на сайт пользователей (имя хоста1, браузер, система), фиксировать ресурсы, с которых они пришли, сколько времени провели на исследуемом ресурсе, сколько страниц посетили, куда перешли и т.п. Нужно также контролировать действия посетителей, в частности выявлять, к какой информации они проявляют повышенный интерес, что загружают, по каким ссылкам щелкают и пр., а кроме того, оценивать результативность проведения рекламных кампаний, вести учет эффективности партнерских ссылок, контролировать окупаемость инвестиций (ROI2 ) и т.д. В случае же позиционирования сайта в сфере электронной торговли спектр анализируемых параметров еще шире (в таком случае требуется применение специализированных решений, которые в данной статье не рассматриваются, за исключением Google Analytics).
В общем, разработка любого успешного интернет-проекта немыслима без точных инструментов анализа его работы, которые помогут принять верные решения относительно дальнейшего развития сайта, лучше понять предпочтения клиентов, повысить отдачу от рекламы и т.п.
Методы подсчета статистики посещаемости сайта
Теоретически существует два основных метода подсчета статистики: использование анализатора логов и применение счетчика посещений. Каждый из названных методов имеет свои плюсы и минусы, однако в большинстве случаев более просты в применении и подходят для широкого круга пользователей именно счетчики, а лог-анализаторы, как правило, сложны в настройке (требуется специальная подготовка конфигурационных файлов), а потому в большей степени ориентированы на профессионалов. Хотя при желании можно отыскать и простые в применении анализаторы логов (правда, все подобные решения оказываются платными и чаще всего достаточно дорогими), и не совсем банальные в использовании счетчики. При этом ни один из методов не обеспечивает полной достоверности статистических данных, и на практике показания счетчиков и лог-анализаторов могут различаться в десятки раз. Оптимальным решением является комбинация обоих методов сбора информации, поскольку только в этом случае возможно получить наиболее близкие к реальности данные.
Анализаторами логов называют программы, которые сами не занимаются сбором статистики, но умеют анализировать серверные логи (то есть данные обо всех обращениях к серверу, записанные им в лог-файлы). Теоретически лог-файлы можно просматривать и вручную через текстовый редактор, но это достаточно трудоемко, а при большом (в сотни и тысячи) числе посетителей и вообще невозможно. Гораздо удобнее использовать анализаторы логов, преобразующие данные в понятные отчеты. Поскольку web-сервер фиксирует все обращения к сайту, то формируемые на их основе отчеты обеспечивают самую полную статистику о посетителях и могут рассказать очень много. Так, с помощью отчетов анализаторов можно узнать не только общее количество хитов и хостов, но и выяснить, по каким ссылкам приходили на сайт посетители, на каких именно страницах они были, какие файлы загрузили, сколько времени провели, с каких страниц ушли, смогли ли вообще загрузить нужные им страницы и т.д. Серверные логи также позволяют учитывать число заходов с поисковиков, вести статистику поисковых запросов, определять маршруты перемещения пользователей по сайту, вести статистику рефереров и отслеживать деятельность поисковых роботов и т.д. Иными словами, приведенная в отчетах лог-анализаторов статистика отличается максимально возможной полнотой (последнее, правда, относится лишь к профессиональным решениям) и позволяет проанализировать работу проекта и выявить имеющиеся проблемы. В то же время в подавляющем большинстве случаев хостеры в целях минимизации размера лог-файлов не включают на серверах возможность фиксации cookies — в итоге точно идентифицировать посетителей по серверным логам удается далеко не всегда, ведь зачастую руководствоваться приходиться только IP-адресами. А один IP-адрес в действительности не может ассоциироваться с одним и тем же пользователем — у части пользователей адреса динамические, при работе через прокси-сервер множество пользователей получают одинаковый IP-адрес, часть пользователей применяет софт для сокрытия своих IP-адресов и т.д. Все это означает, что на базе серверных логов нельзя получить статистику, важную для электронной коммерции, например отчеты по продажам.
В отличие от анализаторов, счетчики посещений собирают данные для анализа самостоятельно, правда для этого требуется разместить на страницах исследуемого сайта специальный код, по которому при обращении к странице (когда наряду с содержимым сайта загружается еще и внешний элемент — чаще всего картинка) записываются данные о посетителе. Счетчики ведут общую статистику посещаемости с детальным распределением по времени, фиксируют хосты и хиты, выявляют уникальных посетителей (с подробной информацией о каждом из них — IP-адрес, браузер, ОС, новый/старый и др.) вкупе с количеством посещенных ими страниц и временем пребывания на каждой из них. Кроме того, счетчики фиксируют рефереров, нередко могут запоминать данные о путях перемещения посетителя по сайту, начиная с точки захода на сайт и заканчивая точкой выхода, могут определять информацию о цветности, разрешении экрана, языке браузера и пр.
Вместе с тем собранную счетчиками статистику нельзя признать полной, ведь они не могут подсчитать трафик, не предоставят данные о загрузке пользователем файлов, флэш-объектов, картинок, активизации ссылок и форм и, как правило, не умеют отслеживать поисковых роботов и т.д. Да и назвать точной статистику от счетчиков нельзя по многим причинам. Счетчики берут данные из cookies, получение информации из которых может блокироваться в браузере. Они управляются скриптами, поддержку которых в браузере несложно отключить. Пользователь может работать с несколькими браузерами, что еще больше запутывает ситуацию. Кроме того, при медленной связи некоторые картинки (в том числе и картинки счетчиков) могут просто не успевать загрузиться, ведь пользователь, увидев требуемую информацию, никогда не станет ждать окончания загрузки страницы, а перейдет дальше по нужной ссылке. И наконец, многие из тех, кто использует dial-up, просто отключают загрузку картинок в браузере, так что картинка счетчика потенциально не может загрузиться, а следовательно, скрипт не сработает и пользователь останется неучтенным. Так что погрешность собираемых счетчиками данных внушительна и, как считают многие специалисты в данной сфере, может составлять до 30%.
Счетчики бывают внешними и внутренними. Первые реализованы как веб-сервисы и управляются с удаленного сервера, на которых и хранится вся собираемая информация. Данный тип статистики широко распространен и прельщает многих пользователей относительной бесплатностью (на самом деле никакой благотворительности тут нет, так как на сайте размещается картинка с логотипом соответствующего сервиса, по сути представляющая собой его рекламу) и простотой использования. Внешние счетчики не обеспечивают получение статистики в режиме реального времени (они выдают ее с некоторым опозданием) и не умеют отслеживать роботов. Кроме того, собираемая ими информация хранится на внешнем сервере, а это небезопасно. Для бесплатных счетчиков можно назвать еще ряд минусов. Во-первых, никто не гарантирует бесперебойной работы счетчика (или хотя бы uptime в 99%) и высокой скорости загрузки сайта со счетчиком. Во-вторых, на сайт придется устанавливать видимые картинки счетчика с логотипом соответствующего веб-сервиса, которые, как правило, совсем не вписываются в дизайн сайта. В-третьих, не всегда есть возможность получить услугу анонимно, то есть без регистрации в различных рейтингах и каталогах.
Внутренние счетчики (или внутренние системы статистики) управляются с собственного сервера и представлены отдельными модулями, которые устанавливаются со стороны клиента либо интегрируются в систему управления сайтом. Они обеспечивают доступ к статистике в режиме реального времени и гарантируют конфиденциальность информации. Разработчики сайтов для установки подобных счетчиков пишут требуемые модули самостоятельно либо прибегают к независимым коммерческим решениям, которые в большинстве своем обеспечивают получение очень широкого спектра статистической информации, важной как для администраторов сайтов, так и для маркетологов.
Лог-анализаторы
Наиболее известными из существующих некоммерческих анализаторов логов, наверное, стоит признать пакеты Analog, Webalizer и AWStats. Они широко применяются даже несмотря на то, что давно не развиваются — исключение составляет AWStats, у которого иногда выходят обновления. В частности, данные лог-анализаторы нередко предлагают хостинговые компании в качестве бесплатного сервиса, обеспечивающего доступ к детальной информации серверных логов. Из коммерческих продуктов в качестве примеров лог-анализаторов можно привести такие решения, как Deep Log Analyzer, WebLog Expert и AlterWind Log Analyzer. Мы рассмотрим пакет AlterWind Log Analyzer, созданный российскими разработчиками и хорошо известный не только в России, но и во всем мире.
Помимо специальных пакетов для анализа логов работать с серверными логами иногда могут и другие решения — например пакеты, предназначенные для аудита и оптимизации сайтов (см. статью «Обзор решений для поисковой оптимизации»), в частности Page Promoter и Semonitor. Функциональность всех названных решений отражена в табл. 1.
Таблица 1. Функциональность решений для анализа логов
Как написать свой счетчик посещаемости
Цитатник веб-разработчиков В тексте курса вы встретите цитаты, высказанные в разное время разработчиками системы и разработчиками проектов на базе Bitrix Framework. Надеемся, что такие неформальные замечания внесут некоторое разнообразие в процесс изучения. Заодно опытные специалисты поделятся и своим опытом.
Имена авторов цитат даются в том написании, в каком авторы зарегистрировали себя на сайте «1С-Битрикс». .
Евгений Смолин: Сам кувыркался с непонятками (пока курсы учебные не прочитал и руками не попробовал то, что там написано). Битрикс из тех систем, где изучение «методом тыка» не очень эффективно без предварительного изучения учебных курсов. Уважаемые новички, потратьте немного своего драгоценного времени, пройдите пару-тройку учебных курсов и масса вопросов просто испарится — там есть ответы на множество вопросов.
Курс для разработчиков — продолжение линейки учебных курсов по Bitrix Framework. Получение сертификата по курсу рекомендуется после успешной сдачи тестов по всей линейке курсов, так как без понятия о работе Контент-менеджера и Администратора создание успешных сайтов будет затруднено.
Чтобы научиться программировать в Bitrix Framework, нет необходимости изучать всю линейку курсов. Но есть моменты, которые необходимо знать разработчикам о системе, они раскрыты в начальных курсах:
- Интерфейс программы — в главе Элементы управления курса Контент-менеджер.
- Компоненты 2.0 (начальные сведения) в главе Компоненты 2.0 (начальные сведения) курса Контент-менеджер.
- Информационные блоки — в главе Информационные блоки (начальные сведения) курса Контент-менеджер.
- Управление доступом к файлам, элементам контента, модулям и другие права доступа в главе Управление доступом курса Администратор. Базовый.
- Работа с инструментами системы — в главе Работа с инструментами курса Администратор. Базовый.
- Модуль Поиск — в главе Поиск курса Администратор. Базовый.
- Вся информация по администрированию модулей размещена в курсах:
- Администрирование. Модули — модули «1С-Битрикс: Управление сайтом»
- Администратор. Бизнес — модули «1С-Битрикс: Управление сайтом», связанные с коммерческой деятельностью в Интернете.
- Администратор «1С-Битрикс: Корпоративный портал» — модули «1С-Битрикс: Корпоративный портал»
Как построен курс
Общепринятая градация квалификации разработчиков в рамках курса обозначает что:
- Junior сможет создавать простые сайты работая со штатными компонентами и модифицируя их шаблоны.
- Middle разработчик может работать с API Bitrix Framework.
- Senior умеет работать над производительностью и безопасностью сайтов, создавать свои модули и компоненты.
Начальные требования к подготовке
Для успешного изучения курса и овладения мастерством разработки сайтов на Bitrix Framework необходимо владеть (хотя бы на начальном уровне):
- основами PHP, баз данных;
- основами HTML, CSS.
У нас часто спрашивают, сколько нужно заплатить
Курс полностью бесплатен. Изучение курса, прохождение итоговых тестов и получение сертификатов — ничего из этого оплачивать не нужно.
Но у нас есть Академия 1С-Битрикс, где можно обучиться на платной основе на курсах нашей компании либо наших партнёров.
Баллы опыта
В конце каждого урока есть кнопка . При клике на неё в Вашу итоговую таблицу опыта добавляется то количество баллов, которое указано в прочитанном После нажатия кнопки Прочитано! появится
окно подтверждения:уроке.
Периодически мы заново оцениваем сложность уроков, увеличивая/уменьшая число баллов, поэтому итоговое количество набранных Вами баллов может отличаться от максимально возможного. Не переживайте! Отличный результат — это если общее число набранных Вами баллов отличается от максимального на 1-2%.
Тесты
После изучения курса вам будет предложено пройти тесты на сертификацию. При успешной сдаче последовательности тестов на странице Моё обучение можно просмотреть результат обучения и загрузить сертификат в формате PDF.
Комментарии к статьям
На каждой странице курса авторизованный на сайте посетитель может дать комментарий к содержимому страницы. Комментарий — не форум, там не ведётся обсуждений или разъяснений. Это инструмент для сообщений нам об ошибках, неточностях. Для отправки комментария воспользуйтесь расположенной в правом нижнем углу окна браузера кнопкой:
Что дальше?
Одновременно с изучением курса Разработчик Bitrix Framework вам придётся обращаться к информации о других технологиях Bitrix Framework. Эта информация размещена в следующих курсах:
- Технология Композитный сайт — ускорение работы сайта.
- Разработка и эксплуатация высоконагруженных проектов — для тех кто делает «тяжёлые» проекты.
- Бизнес-процессы — настройка и создание бизнес-процессов.
- Бот платформа Битрикс24 — приложения, основанных на чатах в веб-мессенджере.
- Маркетплейс Битрикс24 — приложения для коробочной и облачной версий Битрикс24.
- Маркетплейс Bitrix Framework — расширение функционала проектов на основе Bitrix Framework с помощью сторонних модулей и решений.
- Многосайтовость — система многосайтовости и принципы работы с многосайтовой конфигурацией.
Для преподавания оффлайн
Если данный курс берётся в качестве основы для оффлайного преподавания, то рекомендуемая продолжительность: 5 дней (40 академических часов).
Если нет интернета
Скачать материалы курса в формате EPUB. Файлы формата EPUB Чем открыть файл на
Android:
EPUB Reader
CoolReader
FBReader
Moon+ Reader
eBoox
iPhone:
FBReader
CoolReader
iBook
Bookmate
Windows:
Calibre
FBReader
Icecream Ebook Reader
Плагины для браузеров:
EpuBReader – для Firefox
Readium – для Google Chrome
iOS
Marvin for iOS
ShortBook
обновляются периодически, поэтому возможно некоторое отставание их от онлайновой версии курса.
Счётчик посещений страниц
Php начинающим
Задача стоит так: надо создать программу, которая бы заносила в базу данных адреса страничек сайта, с ip адресом пользователя и количествами кликов, именно на этой страничке. Когда сайт не большой, то проблем не возникает. Но, когда на сайте много страниц, например у нас на данный момент 24 тысячи, то файл, куда будет сохраняться информация, по размеру будет около 2,5 Мб. И, если использовать обычные методики, типа циклов, то программа будет сильно тормозить. Поэтому пришлось сделать скрипт, который вообще не использует циклы, но меняет информацию внутри файла — базы. Сделать это можно только с использованием регулярных выражений. Я не буду приводить весь скрипт, кто хочет скачайте zip архив, а приведу лишь кусок:
$_User_ip = getenv (‘REMOTE_ADDR’);
if (! empty ( $_SERVER [ ‘REQUEST_URI’ ] )) <
$_SERVER [ ‘REQUEST_URI’ ] = substr ( $_SERVER [ ‘REQUEST_URI’ ] , 1);
if (empty( $_SERVER [ ‘REQUEST_URI’ ] )) < $_SERVER [ 'REQUEST_URI' ] = 'index.html'; >
>
else $_SERVER [ ‘REQUEST_URI’ ] = ‘index.html’;
$size = filesize ( $counter_dat );
$fp = fopen ( $counter_dat , «a+» );
$_content = fread ( $fp , $size );
fclose ( $fp );
$search = «
( [ 0-9 ] +)t( [ 0-9. ] +)t(» . preg_quote ( $_SERVER [ ‘REQUEST_URI’ ] ,»
is»;
if (preg_match( $search , $_content , $arr )) <
if ( $_User_ip != $arr [ 2 ] ) <
$_content = preg_replace ( $search , ++ $arr [ 1 ] .»t». $_User_ip .»t\3n», $_content );
>
>
else < $_content .= "1"."t". $_User_ip ."t". $_SERVER [ 'REQUEST_URI' ] ."n"; >
$fp = fopen ( $counter_dat , «w» );
fwrite ( $fp , $_content );
fclose ( $fp );
$_var = rand ();
print «кликайте на ссылках, база будет меняться.
Смысл его прост — скачали полностью всю информацию из файла, потом ищем, если такой страницы нет, то записываем её в базу, если есть, то проверяем Ip, если пользователь новый, то увеличиваем счетчик на один, и пишем новый Ip в базу. То есть, что нам это дало, а то что работает такая схема за доли секунды, а вот если бы был цикл, то не менее 10 секунд уходило бы на то, чтобы покопаться в базе данных. Её работа видна на наших страничках снизу идёт подсчёт кликов — просмотров. Ниже представлена таблица самых посещаемых страниц у нас. Покликайте на них, потом перезагрузите эту страницу и Вы увидите, что счётчик увеличился на один, на всех страницах, что вы кликали
Страница: 1 2 3 | Всего страниц: 3 |
Кликов | IP пользователя | Адрес URL |
9569 | 66.102.9.111 | index.html |
90 | 37.21.132.188 | dostup.html |
83 | 95.37.206.171 | kodurl.html |
64 | 95.158.42.183 | php_js.html |
56 | 217.64.142.248 | kodir2.html |
40 | 46.72.79.73 | grafika.html |
37 | 185.87.192.11 | array.html |
28 | 94.20.49.186 | funct.argument.array-map.html |
27 | 17.121.115.80 | phpaz.html |
26 | 62.118.159.97 | mod_rewrite.acti.vars.html |
24 | 95.47.253.202 | counter.html |
23 | 176.15.208.137 | javascript_f.html |
21 | 176.59.54.142 | dollar.html |
20 | 114.119.157.174 | php_curl.html |
20 | 128.72.10.250 | poisk.html |
18 | 178.204.250.68 | navigat.html |
17 | 114.119.156.233 | raznoe.html |
16 | 212.102.33.44 | all.php?.html |
16 | 114.119.148.14 | cashe.html |
16 | 46.101.80.192 | pochta.html |
16 | 114.119.142.126 | classphp.html |
16 | 83.220.239.65 | foto.html |
16 | 88.99.194.48 | php_sitemap.html |
15 | 114.119.139.181 | kodir.html |
15 | 5.9.232.172 | robotbad.html |
15 | 114.119.142.121 | funct.argument.date.html |
15 | 185.210.140.136 | xakera.html |
15 | 91.225.162.234 | php_color.html |
14 | 23.229.104.2 | blog.html |
14 | 114.119.142.127 | kodoutlook.html |
14 | 31.173.85.40 | antispam.html |
14 | 114.119.133.89 | session.html |
14 | 114.119.135.132 | cookie.html |
14 | 114.119.159.121 | xaker.html |
13 | 114.119.157.96 | antizip.html |
13 | 157.55.39.42 | javascript.html |
13 | 114.119.142.124 | kalendar.html |
13 | 49.12.196.159 | fsockopen.html |
13 | 114.119.142.124 | htaccess.html |
12 | 46.101.80.192 | scrypt.html |
12 | 114.119.133.125 | gos.html |
12 | 46.101.80.192 | ini.html |
11 | 119.91.96.237 | examples/index.html |
11 | 217.118.90.164 | posixphp.html |
11 | 114.119.158.5 | classphp5.html |
11 | 91.209.94.26 | epub.html |
11 | 119.91.96.237 | help/user/index.html |
11 | 83.220.238.7 | teory.html |
11 | 114.119.135.36 | zip_read.html |
11 | 119.91.96.237 | ckfinder/ckfinder.html |
11 | 31.173.81.123 | apache.html |
11 | 194.187.110.38 | novosti.newss.yes.page.24.show.yes.html |
11 | 188.162.65.115 | novosti.newss.yes.page.28.show.yes.html |
11 | 114.119.142.131 | zziper.html |
11 | 114.119.144.37 | nachalo.html |
11 | 206.1.78.76 | uploadify.html |
11 | 119.91.96.237 | index.php |
11 | 206.1.78.76 | fotophp.html |
11 | 119.91.96.237 | Search.html |
11 | 114.119.144.30 | svet.html |
Страница: 1 2 3 | Всего страниц: 3 |
Страница: 1 2 |
1. проверка существования файла
2. читаем файл
3. проверяем, файл должен содержать только одну строку
4. проверяем, в строке должны быть только цифры
5. увеличиваем счетчик
6. пишем обратно в файл
7. проверяем, записалось ли
Проверка стоит даже на существование собственных скритов движка и
файлы-шаблоны. Это скажется на скорости работы сайта.
Мне в инете попадались вот такие фразы: «сбои работы сервера»,
«хакерские атаки» и т.д., после чего сайт не работал или ругался на
отсутствие файлов.
Вопросы:
1. Возможны ли ситуации, при которых файл счетчика показов страницы
будет потерян (обрезан) в момент записи при сбоях (перегрузках, и т.д.) ?
Хакера в учет не брать.
Проблемы одновременного использования файла двумя
пользователями (чтение-запись) тоже.
2. Возможны ли потери собственных скриптов?
3. На хостере есть архивация. Я понимаю, что это, но не знаю, как
используется эта штука. Можно в двух словах объяснить, какая польза от
этой архивации?
4. Я написал выше пример «замороченного» счетчика, а что Вы думаете об
этих многочисленных проверках?
Заранее благодарю Вас.
Ответ: На моем сайте, ВСЁ сохраняется в одном файле (по поводу подсчета просмотров страниц). Раз в полгода ВСЁ это дело стирается, так как работает ПОСТОЯННО, а значит, является самой уязвимой вещью на сайте. Не вижу в этом ничего плохого, так как сама такая статистика направлена только на одно — выявление самых популярных страниц своего сайта и ПОНИМАНИЯ почему же они самые посещаемые.
Ну и пусть, стираются раз в полгода, я сам стираю этот файл, если не происходят сбои на сервере.
По поводу торможения, могу сказать, что в Google есть функция «эффективность сайта», там все сайты с загрузкой страниц более секунды считаются медленными, когда ЭТО увидел сократил свой объем статистики до 1 часа (было сутки), но все-равно страницы генерируются за 1,5 секунды в среднем.
Выбирать Вам, что Вы хотите иметь статистику по сайту, либо чтобы сайт работал как молния.
Думаю, есть золотая середина, ищите её и все будет хорошо.
Ответ: Вы обратили внимание, что программа работает с $_SERVER [ ‘ QUERY_STRING ‘ ] , то есть со ссылками типа all.php?act=что-то, если на вашем сайте ЭТОГО нет, то есть сайт работает через $_SERVER [ ‘ REQUEST_URI ‘ ] , то есть ваши ссылки типа index.html, to.html, итд, то данный скрипт и не должен работать.
Вообще наверное использование на Вашем сайте динамических адресов — недостаток.
Можно хотя-бы — mod_rewrite применить. Тогда в Рамблере и ему подобных будет намного больше страниц. Хотя mod_rewrite у Вас на сайте и применен, но по моему мнению немного не в ту сторону.
Сама идея, как все Ваши идеи неплохая. Спасибо.