Что будет лучшим способом получить информацию о реферере, например, сказать google 20%, msn 10%, внутренние 70%. Его для выяснения того, как каждая статья, размещенная на сайте, просматривалась или обращалась к ней. Не в Google Analytics. Но его для блоггеров, чтобы проверить после того, как они опубликовали техническую статью. Приложение находится в php, а также использует фреймворк Zen.Получить процент реферера
ответ
Как в режиме реального времени сделать результаты должны быть?
Подход 1 - измените ваше приложение, чтобы при обслуживании сообщения оно хранило информацию о реферере. (Доступно для вашего PHP-приложения, проверьте библиотеку cgi). Преимущество: может давать статистику в реальном времени, но замедляет ваше приложение и добавляет дополнительную сложность.
Подход 2 - сохранить файлы журнала и проанализировать их в автономном режиме. Наверное, лучше все вокруг. Обратите внимание, что Apache может хранить свои журналы непосредственно в базе данных (а не в файлах журналов). Это облегчит запрос и анализ отчетов для ваших авторов.
Добавлено - еще одно преимущество хранения информации журнала в базе данных (на лету или в партии) заключается в том, что «один отчет ведет к другому» - сегодня авторы хотят знать информацию о реферере. Завтра им понадобятся кросс-вкладки по типу браузера и стране.
Почему вы не хотите использовать Google Analytics?
сделать таблицу со ссылками:
ID | референт | article_id | счет
и:
ID | article_id | total_count
и каждый раз, когда кто-то обращается к вашей статье, increnment total_count для статьи и правильного подсчета.
И когда вы показываете это, просто разделите эти два счетчика.
извините за мой английский;)
Есть ли способ справиться с обновлением или отправить назад? Как, например, опубликовать комментарий к статье на странице. – zapping
hmm ... if (referrer == this_site) обновленный! – radex
Может быть, что-то с началом сеанса может это сделать? Есть ли способ узнать? Как и в asp.net, у вас есть событие запуска сеанса в файле global.ascx. – zapping
Я не уверен, как настроено ваше приложение, но позволяет предположить, что каждое сообщение хранится в базе данных с уникальным идентификатором. Ваш сценарий будет выглядеть примерно так:
- Получить ссылающийся с помощью
$_SERVER['HTTP_REFERER
] - магазина, что в базе данных, используя оригинальный идентификатор сообщения в качестве внешнего ключа и нормализованной версию домена
затем, когда вы хотите, чтобы показать статистику, выполнить запрос, как это:
SELECT `domain`, COUNT(*) as `total` FROM post_referrers WHERE `post_id` = 5 GROUP BY `domain`
затем можно вычислить процент от общего числа вернулись.
В таблице post_referrers
будет выглядеть следующим образом:
id, domain, post_id, full_url
И если ссылающийся URL является http://google.com/?q=whatever
вы хотите сохранить:
domain: google.com
post_id: 5
full_url: http://google.com/?q=whatever
Эта информация должна отображаться для них на самом сайте , – zapping