2008-08-05 6 views

Odpowiedz

11

Ponieważ programy takie jak AdBlock właściwie nigdy nie żądają ogłoszenia, należy przejrzeć dzienniki serwera, aby sprawdzić, czy ten sam użytkownik uzyskał dostęp do strony internetowej, ale nie uzyskał dostępu do ogłoszenia. Zakłada to, że reklama znajduje się na tym samym serwerze.

Jeśli Twoje reklamy znajdują się na oddzielnym serwerze, sugeruję, że nie można tego zrobić.

Najlepszym sposobem, aby powstrzymać użytkowników przed blokowaniem reklam, jest umieszczanie reklam tekstowych w wierszu, które są generowane przez serwer i umieszczane wewnątrz html.

3

Przypuszczam, że można porównać wydruki reklam z odsłonami w witrynie (które można pobrać z oprogramowania analitycznego).

10

Dodaj identyfikator użytkownika do wniosku o reklamie:

<img src="./ads/viagra.jpg?{user.id}"/> 

ten sposób można sprawdzić, jakie reklamy są postrzegane przez użytkowników.

4

Musisz pomyśleć o różnych sposobach blokowania reklam. Pierwszą rzeczą, na którą należy zwrócić uwagę, jest to, czy działają one noscript, więc możesz dodać skrypt, który by to sprawdził.

Następną sprawą jest sprawdzenie, czy blokują one błysk, mały film powinien to zrobić.

Jeśli spojrzeć na miejscu AdBlock, istnieją pewne wskazanie, w jaki to robi blokując:
How does element hiding work?

Jeśli spojrzeć dalej w dół tej stronie można zobaczyć, że konwencjonalne chrom sondowania nie będzie działać, więc trzeba spróbować przeanalizować zmieniony DOM.

4

Forum AdBlock says służy do wykrywania AdBlocka. Po kilku poprawkach możesz użyć tego do zebrania statystyk.

setTimeout("detect_abp()", 10000); 
var isFF = (navigator.userAgent.indexOf("Firefox") > -1) ? true : false, 
    hasABP = false; 

function detect_abp() { 
    if(isFF) { 
    if(Components.interfaces.nsIAdblockPlus != undefined) { 
     hasABP = true; 
    } else { 
     var AbpImage = document.createElement("img"); 
     AbpImage.id = "abp_detector"; 
     AbpImage.src = "/textlink-ads.jpg"; 
     AbpImage.style.width = "0"; 
     AbpImage.style.height = "0"; 
     AbpImage.style.top = "-1000px"; 
     AbpImage.style.left = "-1000px"; 
     document.body.appendChild(AbpImage); 
     hasABP = (document.getElementById("abp_detector").style.display == "none"); 

     var e = document.getElementsByTagName("iframe"); 
     for (var i = 0; i < e.length; i++) { 
     if(e[i].clientHeight == 0) { 
      hasABP = true; 
     } 
     } 
     if(hasABP == true) { 
     history.go(1); 
     location = "http://www.tweaktown.com/supportus.html"; 
     window.location(location); 
     } 
    } 
    } 
} 
Powiązane problemy