jurchiks Posted May 28, 2013 Report Share Posted May 28, 2013 (edited) Man lapā ir redirektošana uz citām lapām caur PHP skriptu, kurš logo klikšķus, un vajag izfiltrēt ārā botus. Skatos, ka botus/crawlerus var diezgan vienkārši atpazīt, pārbaudot $_SERVER['HTTP_USER_AGENT'], vai, trakāk, čekojot IP adreses. Gribētu pajautāt, vai kādam nav jau gatavs risinājums šai problēmai, jeb, konkrētāk, saraksts ar botu user agentiem/relevant fragmentiem. Pēc IP adresēm galīgi negribās čekot, liekas bik pa traku un IMO tas var pamatīgi nobremzēt redirektu, ja brauc cauri masīvam sarakstam ar user agentiem un IP adresēm. Ieteikumi efektīvākai atpazīšanai arī ir vēlami. Nu un tā, kā šī tēma, domājams, interesē daudzus, ne tikai mani, tad būtu lūgums iztikt bez offtopic. Edited May 28, 2013 by jurchiks Quote Link to comment Share on other sites More sharing options...
codez Posted May 28, 2013 Report Share Posted May 28, 2013 Nu un tā, kā šī tēma, domājams, interesē daudzus, ne tikai mani, tad būtu lūgums iztikt bez offtopic. Kuru tad tas vēl varētu ineteresēt, ja normāli cilvēki izmanto gatavus analītikas rīkus, kā google analytics, awstats vai newrelic. Quote Link to comment Share on other sites More sharing options...
jurchiks Posted May 28, 2013 Author Report Share Posted May 28, 2013 (edited) Kā tieši tu izmantosi google analytics, lai ielogotu lokālajā datubāzē tikai reālos klikšķus? Man kaut kā liekas, ka tu nesaproti, par ko iet runa... Edited May 28, 2013 by jurchiks Quote Link to comment Share on other sites More sharing options...
xPtv45z Posted May 28, 2013 Report Share Posted May 28, 2013 Un tu saproti? Kopš kura laika boti veic klikšķus? :) Quote Link to comment Share on other sites More sharing options...
jurchiks Posted May 28, 2013 Author Report Share Posted May 28, 2013 (edited) Boti iet cauri visiem linkiem, atsevišķi linki redirekto uz ārējām lapām, es logoju šos konkrētos redirektus. Tas, ka bots burtiski neklikšķina uz pelītes kreisā taustiņa, nenozīmē, ka es te kaut ko melšu. Normāliem lietotājiem tie ir klikšķi uz linkiem. Edited May 28, 2013 by jurchiks Quote Link to comment Share on other sites More sharing options...
codez Posted May 28, 2013 Report Share Posted May 28, 2013 (edited) Dari gudri - href saite lai ir īstā ārējā saite un jebkurš bots uzreiz ies uz īsto, bet lietotājiem pārķer mousedown eventu ar javascriptu, ielogo (vienalga kā ,vai caur redirectu, vai ajaxu ar saviem vai gataviem analītikas tūļiem) un tikai tad sūti uz ārejo lapu. Tā kā 99,9% lietotāju ir ar ieslēgtu js, tad šāda sistēma strādā gandriz nevainojami. Pat google tā dara. Edited May 28, 2013 by codez Quote Link to comment Share on other sites More sharing options...
jurchiks Posted May 28, 2013 Author Report Share Posted May 28, 2013 (edited) T.i. ja man ir šāds kods: <a href="http://rofl.mao/blabla" class="redirect">somelink</a> <script type="text/javascript"> $('.redirect').click(function() { //log click via ajax }); </script> tad man neviens bots garantēti neparādīsies? Mousedown gluži neder, jo, cik zinu, tad anchor neredirekto, ja tu uzklikšķini uz viņa, pakustini peli un atlaid pogu kaut kur citur. + otra lieta - ja man lapā ir oriģinālais links, tad manai lapai samazinās page rank un tai lapai, uz kuru iet links, tas paaugstinās. Edited May 28, 2013 by jurchiks Quote Link to comment Share on other sites More sharing options...
Kavacky Posted May 28, 2013 Report Share Posted May 28, 2013 Nekas nekad nav garantēti. Ārējiem linkiem: rel="nofollow". Quote Link to comment Share on other sites More sharing options...
codez Posted May 28, 2013 Report Share Posted May 28, 2013 (edited) T.i. ja man ir šāds kods: <a href="http://rofl.mao/blabla" class="redirect">somelink</a> <script type="text/javascript"> $('.redirect').click(function() { //log click via ajax }); </script> tad man neviens bots garantēti neparādīsies? Mousedown gluži neder, jo, cik zinu, tad anchor neredirekto, ja tu uzklikšķini uz viņa, pakustini peli un atlaid pogu kaut kur citur. + otra lieta - ja man lapā ir oriģinālais links, tad manai lapai samazinās page rank un tai lapai, uz kuru iet links, tas paaugstinās. Prakstiski tas ir garantēts. Nezinu tādu botu, kurš pēksņi no koda sāk saukt js funkcijas ar ajax requestiem, kaut teroētiski protams tas ir iespējams. Tad jau tev būs vairāk botu, kurus nevarēs atšķirt no lietotājiem dēl useragent un ip. Es domāju, vislabāk izpēti, kā to dara google savā search lapā, kur uz linka vienmēr ir ārējās lapas saite, bet uz mousedown tiek nomainīts href pret logošanas saiti. Tad pat paņemot linku un ievelkot jaunā tabā, nostradā logošana. Īstenībā šādai praksei ir ari labums tāds, ka lietotāji uzbraucot ar peli virsū, redz īsto ārējo saiti. Edited May 28, 2013 by codez Quote Link to comment Share on other sites More sharing options...
Lauris Posted May 28, 2013 Report Share Posted May 28, 2013 Ja tie ir meklētāju crawleri, piem., googlebot, tad var izlīdzēties arī ar vienkāršu robots.txt. Quote Link to comment Share on other sites More sharing options...
daGrevis Posted May 28, 2013 Report Share Posted May 28, 2013 Savādāk neko. Ja gribēs, uzrakstīt botu kas apies visu. Quote Link to comment Share on other sites More sharing options...
Lauris Posted May 28, 2013 Report Share Posted May 28, 2013 Vai arī nopirks kādu turku :) Quote Link to comment Share on other sites More sharing options...
daGrevis Posted May 29, 2013 Report Share Posted May 29, 2013 Quote Link to comment Share on other sites More sharing options...
upiz Posted May 30, 2013 Report Share Posted May 30, 2013 Pret normālu botu nekas nepalīdzēs, normāls bots prot lietot proxy un ar ajax arī tiek galā. Quote Link to comment Share on other sites More sharing options...
Zefirs Posted May 30, 2013 Report Share Posted May 30, 2013 Izveido .js pusē cilvēka validāciju. Piem., skaiti peles nobrauktos mm ,ja touch, tad touch eventos start end nobraukto distanci. Šifrē saites, lai nav atklātā veidā pieejamas pirmkodā. Idejas vairāk kā vajag.. :D Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.