Блокировка скрипта адсенс при заходе на сайт с VPN

12
Asmin
На сайте с 25.07.2021
Offline
85
1129

Как заблокировать таких пользователей ? Устал бодатся с адсенс. 

Подключаю адсенс, через пару дней прилетает - 

Временное ограничение на показ объявлений в Вашем аккаунте AdSense

Потом подозрение на недействительный трафик. 

Снимаю рекламу, жду пока пропадёт предупреждение, ставлю рекламу и опять всё по кругу.

Понял что адсенс матерится на VPN по статистике от matomo. Вот пример одного такого пользователя:

И таких достаточно. С помощью чат жпт создал скрипт для блокировки адсенс блоков от таких посетителей через токе ipinfo.io. Через раз но как то работает. Да и в бесплатном тарифе всего 50000 запросов в месяц. Мне этого где то на неделю. 

Покупать платный тариф за 200 бакинских в месяц нет смысла. 

Есть ещё какие то способы отключать рекламные блоки при обнаружении VPN ? 

Как то же разные партнёрки на лету отключают рекламу в таких случаях. С другой стороны, гугл тоже может это сделать с его то ресурсами, если это запрещёно их правилами. Но нет, пользователь должен сам анализировать трафик и принимать меры. 

M3
На сайте с 09.02.2022
Offline
106
#1
Asmin :
Есть ещё какие то способы отключать рекламные блоки при обнаружении VPN ? 

бесплатно?
все что есть грузит проц и хромает точность
готовая база самое надежное, цена вопроса $50 месяц

Д
На сайте с 01.04.2012
Offline
165
#2
А как этот ipinfo.io определяет, что VPN? Проверил пару IP, которые белые и не имею никакого отношения к VPN, показывает vpn:true. 
Я бы по ASN лучше смотрел...
M3
На сайте с 09.02.2022
Offline
106
#3
Дадуда #:
Я бы по ASN лучше смотрел...

и как бы ты по нему смотрел VPN?

Asmin
На сайте с 25.07.2021
Offline
85
#4
master32 #:
все что есть грузит проц и хромает точность

К примеру ?

M3
На сайте с 09.02.2022
Offline
106
#5
Asmin #:

К примеру ?

на гитхабе vpn+detect+js, помоему от создателей фингерпринта.js
ссылок не дам, меня за них блочат постоянно...

Asmin
На сайте с 25.07.2021
Offline
85
#6
master32 #:
на гитхабе vpn+detect+js, помоему от создателей фингерпринта.js

Спасибо. Это в поиске привело меня к более менее рабочему решению.

Если кому то будет интересно то сделал так :

  • Получите API-ключ на vpnapi.io.
  • Создайте серверный PHP-скрипт, который проверяет, используется ли VPN.
  • Подключите этот скрипт на клиентской стороне (в браузере), чтобы блокировать рекламу.
  • Шаг 1: Создаём серверный PHP-скрипт ( check_vpn.php )

    Этот скрипт будет проверять IP-адрес пользователя через API vpnapi.io :

    <?php
    header('Content-Type: application/json');

    $api_key = 'ВАШ_API_КЛЮЧ'; // Вставьте ваш API-ключ
    $user_ip = $_SERVER['REMOTE_ADDR']; // Получаем IP пользователя
    $api_url = "https://vpnapi.io/api/{$user_ip}?key={$api_key}";

    // Запрашиваем данные с vpnapi.io
    $response = file_get_contents($api_url);
    $data = json_decode($response, true);

    // Проверяем, является ли IP VPN
    $is_vpn = $data['security']['vpn'] ?? false;

    // Отправляем ответ в формате JSON
    echo json_encode(['vpn' => $is_vpn]);
    ?>

    📌 Этот файл ( check_vpn.php ) загрузите в корень вашего сайта ваш сайт.com .


    Шаг 2: Добавляем проверку в HTML

    Теперь на клиентской стороне (в браузере) мы будем запрашивать этот PHP-скрипт и, если обнаружен VPN, блокировать рекламу:

    <script>
    fetch("https://ваш сайт.com/check_vpn.php")
      .then(response => response.json())
      .then(data => {
        if (data.vpn) {
          console.log("VPN обнаружен! Удаляем рекламу.");

          // Удаляем все скрипты AdSense
          document.querySelectorAll("script[src*='adsbygoogle.js']").forEach(el => el.remove());

          // Удаляем рекламные блоки AdSense
          document.querySelectorAll("ins.adsbygoogle").forEach(el => el.remove());
        }
      })
      .catch(error => console.error("Ошибка при проверке VPN:", error));
    </script>

    🔹 Как это работает

    1. Скрипт запрашивает check_vpn.php , который использует API vpnapi.io для проверки IP.
    2. Если обнаружен VPN ( data.vpn === true ), удаляются все рекламные элементы Google AdSense.
    3. AdSense блокируется только для пользователей с VPN, но остаётся видимым для обычных пользователей.

    📌 Где разместить файлы

    • check_vpn.php — загрузить в корень сайта ( https://ваш сайт.com/check_vpn.php ).
    • JavaScript-код — вставить в <head> или перед </body> на страницах, где нужно скрыть рекламу.

    Этот метод не влияет на SEO и не нарушает правила AdSense, так как он просто скрывает рекламу для определённых пользователей. 🚀

    Проверил с разными VPN программами. На разных браузерах. 
    Для теста есть 1000 бесплатных запросов.
    19 дол в месяц за 10000 запросов в день.

    29 дол за 50000 запросов в день.

    Работает лучше чем ipinfo.io

    P.S

    Инструкцию писал чат жпт.

    L
    На сайте с 29.10.2018
    Offline
    203
    #7
    у меня стоит антибот и показываю капчу сша и все странам где нет гдпр, гдпр уже как антибот
    Mik Foxi
    На сайте с 02.03.2011
    Offline
    1215
    #8
    В антиботе есть такая база бесплатно. Но код получения данных из базы кому то надо будет написать.
    Антибот, антиспам, веб фаервол, защита от накрутки поведенческих: https://antibot.cloud/ (Зеркало: https://антибот.рф/ ) Форум на замену серчу: https://foxi.biz/
    Asmin
    На сайте с 25.07.2021
    Offline
    85
    #9
    AdSGO #:
    у меня стоит антибот

    О каком антиботе идёт речь ? 

    L
    На сайте с 29.10.2018
    Offline
    203
    #10
    сверху который
    12

    Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий