Как исключить трафик в Google Analytics из динамических IP-адресов?
Обнаружение Google необычного трафика приятно. Но как он обрабатывает динамические IP-адреса?
Например, у меня нет диапазонов IP-адресов, и мой провайдер предоставляет динамический IP-адрес, который может меняться при каждой перезагрузке маршрутизатора и каждый день. Итак, здесь, когда я получаю какой-то IP-адрес, я вижу уведомление без капчи. Кажется, после нескольких перезагрузок я получил IP, который не был заблокирован!
Как решить этот тип проблем в Google Analytics. Также я очень хорошо знаю, как исключить трафик с одного IP-адреса и с диапазоном IP-адресов, но я не знаю, как блокировать внутренний трафик, чьи IP-адреса меняются каждый день?
9 ответов
Есть проблемы со многими популярными ответами на этот вопрос...
- Даже если вам повезет найти диапазон IP-адресов, что делать, если вы работаете в кафе или отеле?
- Проверка имени хоста исключает попадания из среды разработки, но что, если я отлаживаю живой сайт?
- Редактирование конфигураций сервера является раздражающим / сложным, и несколько доменов становятся сложными.
- Расширения Opt-Out либо блокируют хиты на всех веб-сайтах, либо ни одного вообще, в зависимости от того, кого вы спрашиваете.
Итак, я объединил несколько других решений в то, что работает для меня...
- Это следует за мной, куда бы я ни шел
- Работает в среде разработчика и на открытых / публичных доменах.
- Это касается только меня и сайтов, которые я разрабатываю
- Включается / выключается одним кликом
- Нетрудно убедиться, что данные не отправляются в аналитику.
- Может использоваться целой командой людей
Я всегда сохраняю "cookie-файлы разработчика" на своем компьютере только для доменов, которыми я управляю. Этот файл cookie имеет уникальное значение, характерное для меня. Затем я просто проверяю этот файл cookie в своих сценариях перед отправкой любых данных в Google Analytics.
Примеры того, как я размещаю код на своих страницах...
JavaScript
if (window.location.host==="mydomain.com" || window.location.host==="www.mydomain.com") {
if (document.cookie.indexOf("COOKIENAME=COOKIEVALUE") === -1) {
// Insert Analytics Code Here
}
}
PHP
if ($_SERVER['HTTP_HOST']==="mydomain.com" || $_SERVER['HTTP_HOST']==="www.mydomain.com") {
if (@$_COOKIE["COOKIENAME"] !== "COOKIEVALUE") {
// Insert Analytics Code Here
}
}
Проверка того, что имя HOST совпадает с доменом моего действующего сайта ("mydomain.com"), гарантирует, что аналитические данные никогда не будут отправлены ЛЮБЫМ посетителем при просмотре с тестового домена, такого как "localhost" или "beta.mydomain.com", В приведенных выше примерах "www.mydomain.com" и "mydomain.com" являются двумя действительными доменами, в которые я действительно хочу записывать посещения.
Живой сайт отправляет данные в аналитику, как ожидается, ЕСЛИ не найден файл cookie для разработчиков с соответствующими значениями. Если он обнаружит уникальный файл cookie, установленный на моем устройстве, то мое посещение не будет засчитываться в мои итоги в Google Analytics (или любом другом аналитическом инструменте, который я, возможно, решу использовать однажды).
Но что происходит, когда мои куки очищаются? Как сохранить "cookie-файл разработчика" в фоновом режиме? Для этого я создал собственное расширение для браузера... https://chrome.google.com/webstore/detail/lknhpplgahpbindnnocglcjonpahfikn
Это работает только для определенных доменов, которые вы выбираете. Вы настраиваете свое собственное уникальное ИМЯ и ЗНАЧЕНИЕ для файлов cookie в настройках расширения.
Этот метод может легко использоваться группой людей, если они используют одну и ту же пару ИМЯ / ЗНАЧЕНИЕ, поэтому разработчики, создатели контента, корректоры и все остальные сотрудники вашей организации могут просматривать страницы, не раздувая статистику.
Не стесняйтесь поделиться своим решением и использовать мое расширение, чтобы сохранить эти файлы cookie.
К вашему сведению, я подумал о другом подходе, использующем функцию localStorage в HTML5. (Преимущество перед cookie заключается в том, что при очистке cookie вашего браузера значения localStorage сохраняются.) Я написал об этом статью в блоге: Google Analytics: исключите ваши собственные посещения.
Я просто попросил кого-то задать мне эти вопросы и наткнулся на эту ветку. Я нашел альтернативное решение, используя это расширение Chrome, чтобы блокировать себя от Google Analytics на сайтах.
Есть два варианта.
Проверьте, есть ли у вас IP-адрес, если они находятся в некотором диапазоне, тогда вы можете установить диапазон в фильтре IP-адресов. Исключая трафик
Если вы говорите о своем собственном компьютере / сети, у вас есть несколько вариантов:
Настройте прокси-сервер (Fiddler или, если возможно, правило в вашем маршрутизаторе), чтобы блокировать вызовы на google-analytics.com (прокси-сервер должен по-прежнему возвращать код состояния 200).
согласно ответу Гаурава, используйте расширение Google для блокировки GA (есть версии для всех основных браузеров)
установите cookie в формате disable-UA-XXXXXX-X, где вы замените X своим идентификатором свойства.
Первые два параметра будут блокировать все отслеживания Google Analytics на любом сайте, последний остановит только отслеживание свойства, указанного в значении cookie.
Все это - лучшие решения IMO, чем условно, включая библиотеку аналитики. Если у вас есть вызов метода из библиотеки GA где-то в вашем коде, и библиотека не загружена, это приведет к ошибке javascript. Вышеуказанные методы по крайней мере загрузят заглушку кода, которая захватывает вызовы методов, чтобы не было вызовов неопределенных функций.
У нас была задача исключить из Аналитики целую компанию. Интернет-роутер обновлял IP примерно раз в день. Оказалось, что этот маршрутизатор, как и почти все обычные маршрутизаторы, в настоящее время предлагает несколько вариантов для включения динамических IP-сервисов. Например, https://noip.com/.
- Вы регистрируетесь на noip.com и выбираете статическое доменное имя по вашему выбору.
- Затем выберите эту службу (noip.com) в разделе параметров динамического IP-адреса вашего маршрутизатора.
- Введите свои учетные данные с noip.com.
И что происходит сейчас, так это то, что каждый день маршрутизатор автоматически отправляет свой новый IP-адрес на noip.com, где он связывается с зарегистрированным ранее доменным именем. Теперь на вашей странице вы можете динамически проверять IP-адрес этого домена, и, если он совпадает с IP-адресом клиента (браузера), вы исключаете сценарии Google Analytics из печати на страницу.
В моем случае я работал на PHP, и что-то вроде следующего фрагмента работало нормально. Увидеть gethostbyname()
,
$print_tracking_scripts = TRUE;
if (gethostbyname('my-unique-name.ddns.net') === $_SERVER['REMOTE_ADDR']) {
$print_tracking_scripts = FALSE;
}
if ($print_tracking_scripts) {
// Print or include tracking scripts however you like.
}
Лучше использовать плагин для браузера Google Analytics, который можно найти здесь:
Попробуйте расширение браузера Ghostery:
https://www.ghostery.com/
Легко определить, какие скрипты вы хотите заблокировать для домена. В качестве бонуса расширение показывает, какие скрипты отслеживания загружаются во время просмотра веб-страниц.
Почему бы просто не добавить фильтр:
- Перейти к Admin
- Выберите View Profile и создайте новый вид
- Нажмите на фильтр
- Добавить новый фильтр
- Назовите это Исключение IP или как
- Выберите переключатель "Пользовательский фильтр"
- Отметьте Исключить
- Выберите IP-адрес в качестве поля фильтра
- В шаблоне фильтра Используйте Regex, чтобы определить диапазон IP-адресов.
Например, для IP в диапазоне от 182.73.42.140 до 182.73.42.150 регулярное выражение будет:
. ^182.73.42 (1(4[6-9]|50))$
Если у вас есть проблемы с пониманием RegEx, вы можете использовать этот инструмент для создания регулярного выражения диапазона IP