Жарнаманы басудан және сайтты боттардан қорғау
Сіздің сайтыңызды күн сайын мыңдаған боттар шабуылдайды, олар мазмұнды парсингтейді, жарнаманы жалған басады, серверді жүктейді және аналитиканы бұрмалайды, ал есептерде олар қарапайым келушілер ретінде жасырынады.
WAF‑тың классикалық әдістері не нақты клиенттерді тітіркендіреді, не қу эмуляторларды өткізіп жібереді. Біз HaltClick‑те бұл мәселені басқаша шештік: паразиттік трафикті секундтар ішінде кесіп тастайтын, іздеу жүйелері үшін 100% қауіпсіз серверлік антибот жасадық.
Халықаралық есептерге сәйкес, зиянды боттар барлық интернет-трафиктің 37%‑ын құрайды (2025 Imperva Bad Bot Report). Сайт иесі үшін бұл орасан зор жасырын шығындарды білдіреді.
Боттар Яндекс.Директ пен Google Ads‑тегі жарнамаларды басуға еліктейді, күндік лимит бірнеше сағатта таусылады, ал нақты өтінімдер түспейді.
Бәсекелестер мен агрегаторлар парсерлер арқылы тауар сипаттамаларын, мақалалар мен бағаларды көшіреді. Сіздің бірегей материалдарыңыз құнсызданады, ал SEO позициялары төмендейді.
Нөлдік тереңдіктегі ондаған жалған визиттер трафик елесін жасайды. Осындай деректерге негізделген маркетингтік шешімдер бюджетті босқа жұмсауға әкеледі.
Скраперлердің (веб-сайттардан деректерді автоматты жинауға арналған бағдарлама немесе бот) сұрауларының көшкіні сайтты ең қарқынды сәтте »құлатуы» мүмкін. Сатудың орнына сіз тұрып қалуды және ресурстардан асып кеткені үшін шоттарды аласыз.
Жалған аккаунттарды автоматты тіркеу, формалар арқылы тарату, құпиясөздерді іріктеу әрекеттері — мұның бәрі аудиторияның сенімін төмендетеді және ағып кету қауіптерін тудырады.
Каптша сияқты дәстүрлі жауаптар енді жұмыс істемейді: олар нақты пайдаланушыларды тітіркендіреді және ЖИ арқылы оңай айналып өтіледі. Түбегейлі басқа тәсіл қажет — үнсіз серверлік верификация, ол адамнан сұрамай-ақ, алдында кім тұрғанын өзі анықтайды.
HaltClick антиботы — бұл PHP және JavaScript тілдерінде жазылған жеңіл бағдарламалық модуль. Ол тікелей серверіңізге немесе CMS‑ке орнатылады және әрбір кіріс HTTP-сұрауды ол сайт беттеріне жеткенше ұстап алады.
Тексеру біздің аналитикадан жүктелген метрикалармен жергілікті түрде жүзеге асырылады. Сіз бұлтты проксилерге тәуелді емессіз және DNS‑ті өзгертпейсіз, бұл сіздің антифродтың жеке сүзгіңіз. Қағидаты қарапайым: тексереміз → өткіземіз немесе бұғаттаймыз (қате 429).
Антиботты орнату нәтижесінде сайт парсингтен, формалардағы спамнан, мінез-құлық боттарын «жинаудан» қорғалады, серверге жүктеме азаяды.
Егер браузер бұрын верификациядан өтіп, HaltClick‑тің қорғалған кукісі болса, қолжетімділік лезде ашылады.
Canvas, WebGL, қаріптер, рұқсат, тілді жинаймыз. Нақты құрылғылардың ізі бірегей, эмуляторларда ол стереотипті немесе жоқ.
Скрипт браузерге көрінбейтін тапсырма береді: кодты орындау, куканы сақтау. Қозғалыстардың табиғи кідірістері және JS жұмысы жоқ боттар кесіледі.

Жеке кабинеттегі серверлік антиботтың баптаулары
Ешқандай «бағдаршамдарды таңдаңыз» немесе «бұрмаланған әріптерді енгізіңіз». Тексеру шамамен бір секундқа созылады және қысқа прелоадер ретінде көрінеді. Каптшадан бас тарту формалардың конверсиясын 15–20%‑ға арттырады — келушілер ашуланып үлгермейді.
Модуль сіздің серверіңізде жұмыс істейді, іздер базасын алу үшін біздің серверге жүгіну 10 минутта бір рет, ал іздеу боттарының подсеттерінің тізімдерін алу үшін 6 сағатта бір рет қана жүзеге асырылады. Бұл кідірістер мен сыртқы сервистің қолжетімсіздік қаупін болдырмайды.
Қазіргі ЖИ-сервистер графикалық каптшаларды адамнан дәлірек таниды және тиынға түрады. Ал серверлік фингерпринт пен мінез-құлық талдауын алдау әлдеқайда қиын: эмулятор аппараттық ізді және табиғи моториканы қайта жаңғыртуы керек.
Яндекс, Apple, Baidu, Bing, DuckDuck, Google және басқа да заңды іздеу боттары IP-мекенжайлар бойынша тексеру арқылы »қораптан шыққан» күйінде автоматты түрде өтеді, ал олардың жалған көшірмелері толығымен бұғатталады. Индекстелуіңіз бен іздеу нәтижелеріндегі позицияларыңыз қауіпсіз қалады.
Бір келушінің басудан мақсатты бетке дейінгі жолы.
Пайдаланушы (немесе бот) сайттың URL‑ін ашады.
HaltClick серверлік өңдеушісі жарамды куканың бар-жоғын тексереді.
Скрипті бар жеңіл бет қайтарылады. Браузер із жинайды және тапсырманы шешеді.
Токенді талдаймыз, фингерпринтті базамен салыстырамыз, кідіріс уақыттарын бағалаймыз.
Бәрі таза: 14 күнге кука береміз. Аномалия: HTTP 429, сервер ресурстары сақталды.
Тірі келуші жүктеу индикаторының лезде жарқылын ғана көреді.
Бот »қабырғаны» алады, ал бұғаттау деректері бірден HaltClick аналитикаңызда көрсетіледі.
Көптеген клиенттер бізге тек парсерлерді бұғаттау үшін келеді, бірақ қауіпсіздіктің толық экожүйесі үшін қалады. Антибот кірістегі қоқысты кеседі, ал біздің жалған басудан қорғау жүйеміз жарнамалық кабинеттерге арналған бот аудиторияларын қалыптастырады.
барлық кіріс паразиттік ағынның (парсерлер, эмуляторлар).
сервер мен БД‑ға, нақты пайдаланушылар үшін жауапты жеделдету.
Метрика мен Google Analytics‑те 0 секундтық визиттер жоғалады.
қосылғанға дейін контекстік жарнамадағы қаражатты сақтау.

HaltClick антиботы — бұл жай ғана қорғаныс емес, таза деректер мен тиімді жарнамалық науқандардың іргетасы. Көрінбейтін паразиттердің салдарынан қанша ақша босқа кететінін болжауды доғарыңыз. Айына 1 000 визитке тегін антиботты сынап көріңіз.
Трафикті бақылауға алыңыз«Антибот» бөлімінде меншікті қолжетімділік ережелерін қалыптастыруға арналған қуатты құрал қолжетімді. Сіз шектеусіз ережелер санын қосып, оларды бір басумен қоса немесе өшіре аласыз.
Тексеру сайтыңыздың тарапынан автономды түрде орындалады, кідірістер тудырмайды. Тізім серверден 10 минут сайын жаңартылып тұрады, сондықтан кез келген өзгерістер дерлік лезде күшіне енеді.
Ережелерде атау, сипаттама, сұрыптау тәртібі және икемді шарттар тізімі бар. Referer, User Agent, Host, URI, IP, PTR, GET-параметрлері, Lang және тақырыптар (Header) бойынша тексерулерді баптаңыз.
Шарттарды ЖӘНЕ/НЕМЕСЕ логикасымен біріктіріңіз. Тең/тең емес, қамтиды/қамтымайды, басталады/аяқталады, сондай-ақ тұрақты өрнектерді қолдау сияқты әртүрлі салыстыру әдістері қолжетімді.
Іске қосу режимін дербес анықтаңыз: күдікті белсенділікті мәжбүрлі «Бұғаттау» немесе сенімді дереккөздерге қолжетімділікті «Рұқсат ету».

Антиботты қосу бірнеше минутты ғана алады және сайтыңыздың кодына күрделі өзгерістер енгізуді қажет етпейді.
Біздің қолдау қызметі сізге кез келген уақытта көмектесуге дайын, жеке кабинет арқылы өтініш қалдырыңыз.
Антиботты пайдаланар алдында, сайтыңыздағы Яндекс.Метрика кодында referrer: document.referrer мәнін referrer: (() => { try { let r = sessionStorage.getItem('_haltclick_r'); if (r) { return r; } } catch(e){} return document.referrer; })() деп ауыстырыңыз, есептерде нақты реферерлерді алу үшін.
Антиботты пайдаланар алдында, сайтыңыздағы Google Tag кодына gtag('set', 'page_referrer', (() => { try { let r = sessionStorage.getItem('_haltclick_r'); if (r) { return r; } } catch(e){} return document.referrer; })()); қосыңыз, есептерде нақты реферерлерді алу үшін.
Антибот модулі бар Zip-мұрағатын HaltClick жеке кабинетіңізден тікелей жүктеп алыңыз.
FTP/SFTP арқылы сайтқа қосылып, haltclick-xxxxxxxxxxx тәрізді буманы сайттың түбірлік каталогына ашыңыз.
Жүктелген бума үшін жазу құқықтары (755 немесе 775) орнатылғанына көз жеткізіңіз, антибот плагині сигнатураларды жаңарта алуы үшін.
Сайтты басқару жүйеңізді табыңыз немесе веб-сервер деңгейінде қосудың әмбебап әдісін пайдаланыңыз.
.htaccess арқылы әмбебап әдіс. auto_prepend_file директивасы әрбір PHP-скрипті орындалмас бұрын қорғанысты автоматты түрде жүктейді.
php_value auto_prepend_file "<каталогқа_дейінгі_жол>/haltclick-xxxxxxxxxxx/haltclick.php"
PHP-FPM пайдаланған кезде, сайттың түбірлік каталогында .user.ini файлын жасаңыз:
; Қорғаныс скриптін PHP орындалуының ең басында қосамыз
auto_prepend_file = "<каталогқа_дейінгі_жол>/haltclick-xxxxxxxxxxx/haltclick.php"
; Верификация скриптінің орындалу уақыты шегі
max_execution_time = 5
.user.ini файлын кэшілейді. Өзгерістер 5 минут (300 секунд) ішінде немесе PHP-FPM қайта іске қосылғаннан кейін күшіне енеді.auto_prepend_file директивасы сервер әкімшісімен php.ini‑де бұғатталса, CMS кодының ішінде скриптті тікелей шақыруды пайдаланыңыз (төмендегі нұсқаларды қараңыз).Инициализация файлында OnBeforeProlog стандартты пролог оқиғасын пайдаланыңыз:
<?php
AddEventHandler("main", "OnBeforeProlog", "HaltClickHandler");
function HaltClickHandler() {
define('__haltclick', TRUE);
include($_SERVER['DOCUMENT_ROOT'] . '/haltclick-xxxxxxxxxxx/haltclick.php');
}
Қосылым жүктеушідегі IP-мекенжайды тексерудің Index.onBeforeCheckIp жүйелік шұқысына ілінеді (7.1.7 нұсқасынан бастап, қажет болса 7.1.7 жаңартуын қайта орнатыңыз):
Core_Event::attach('Index.onBeforeCheckIp', function(){
define('__haltclick', TRUE);
include(CMS_FOLDER . 'haltclick-xxxxxxxxxxx/haltclick.php');
});
Жүйе ядросының конфигурациялық файлына кірістіру:
include($_SERVER['DOCUMENT_ROOT'] . '/haltclick-xxxxxxxxxxx/haltclick.php');
wp-config.php басты конфигурациялық файлы арқылы қосу боттарды WordPress ядросы мен деректер қорына сұраулар басталмай тұрып кеседі.
include($_SERVER['DOCUMENT_ROOT'] . '/haltclick-xxxxxxxxxxx/haltclick.php');
Сайтыңызға жүгінген кезде келуші тілінде (40 тіл қолдау көрсетіледі) тексеру беті шығып, содан кейін сайтыңыз жүктелуі керек, қиындықтар туындаған жағдайда қолдау қызметіне хабарласыңыз.

haltclick-xxxxxxxxxxx каталогында config.php файлы орналасқан, ол арқылы антибот параметрлерін басқаруға, сондай-ақ тексеруден адрестерді алып тастауға болады.
<?php
return array(
'skipUrl' => array('/favicon.ico', '/favicon.gif', '/favicon.png', '/favicon.svg', '/sitemap.xml', '/robots.txt', '/llms.txt', '/llms-full.txt', '/apple-touch-icon', '/.well-known'),
'skipUrlFunction' => function($uri) { },
'antibotMinFonts' => 5,
'fingerprintDelay' => 970,
);
URL префикстерінің массиві, оларға жүгінген кезде тексеру жүргізілмейді. Қажет болса, бар тізімді толықтырыңыз.
Жолға немесе сұраулардың басқа параметрлеріне негізделген икемді тексеруді баптауға мүмкіндік беретін функция.
Қаріптердің ең аз саны, одан төмен болса сайтқа кіру бұғатталады. Көптеген қарапайым боттар өздері сұраулар жіберетін компьютерде тіпті негізгі қаріптерді жүктеуді қажет етпейді.
Браузер іздерін жинау уақыты, миллисекундпен, әдепкі бойынша 970.
skipUrlFunction функциясында әртүрлі тексерулер жасауға болады, мысалы:'skipUrlFunction' => function($uri) {
// Клиенттік IP-ны алу
$ip = __HaltClick::getClientIp();
// Егер IP берілгендерге тең болса
if (in_array($ip, array('11.21.23.24', '22.32.44.55')))
{
return true;
}
// Егер IP берілген подсетке кірсе
if (__HaltClick::ipCheck($ip, '11.22.23.0/24'))
{
return true;
}
// Белгілі бір реферер үшін тексермеу
$referer = isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : '';
if ($referer === 'https://supersite.com/')
{
return true;
}
},