Les bloqueurs de publicité identifient la publicité De plusieurs manières,

Présentation du système de protection des publicités sur Internet PUB-ON (c)

Les exemples que je vais citer proviennent du site https://adblockplus.org/fr/filters à cette adresse est expliqué en détail le fonctionnement des commandes de filtrage

Les bloqueurs de publicité arrivent à identifier Les éléments publicitaires parce que leurs éléments restent statiques(sont tout le temps les mêmes)
par éléments je veux dire, les adresses URL, les tags CSS HTML (CLASS=, ID=, etc.), les éléments de présentation CSS (width, height, etc.), la position de la publicité dans la page,
les scripts (Java, flash etc.)

voici mes solutions pour empêcher chacunes de ces méthodes d'identification


1: par identification des URL
La méthode d'identification la plus courante qu'utilisent les bloqueurs de publicité est l'identification d'éléments d'adresse URL
Une URL, est composée d'un nom de serveur, d'un ou plusieurs noms de dossiers, d'un nom de fichier
les bloqueurs de publicité se servent de ces éléments pour identifier les publicités par exemple : un nom de serveur seul, pour bloquer tous les éléments venant de ce serveur
ou un nom de serveur suivi d'un nom de dossier, pour bloquer les éléments venant de ce dossier se situant sur ce serveur
ou alors peut être visé, un nom de fichier particulier
Ou une combinaison de ces différents cas

Solution: Pour contrer cette méthode d'identification, il faut utiliser une astuce informatique, Le proxy inverse aussi appelé passerelle
Le principe est de cacher le serveur de publicité visé par le blocage
Pour ce faire, il existe du côté serveur web visité du code permettant de rediriger une requête d'un serveur vers un autre serveur,
Sur serveur Linux apache, c'est une commande à mettre dans le fichier .htaccess, du style" Redirect /rep1/pub.html http://SitePub.com/publicité.htm
Plus d'infos sur le manuel d'utilisation Linux apache commandent Redirect
En gros, c'est rediriger une adresse URL virtuelle vers une adresse URL réelle


2: Par identification des Identifiants CSS HTML (CLASS, ID et NAME)
Les Identifiants CSS HTML, sont un moyen de dissocier le contenu de la page HTML et les propriétés d'affichage de ce contenu
Ces identifiants identifient une zone de texte, une image, un script ou encore un élément externe flash Java ou autre, tous avec ou sans lien URL
le bloqueur de publicité qui identifie un identifiant peut en supprimer l'élément concerné(quel que soit le contenu de cet élément)

Solution : renommer les identifiants RÉGULIÈREMENT de façon ALÉATOIRE (dans le fichier HTML et dans le fichier CSS)

3: Par spécifications des paramètres CSS
pour du texte, les différents paramètres sont: le nom de la police, la taille de la police, ˆ afficher en gras, en souligner, L'alignement(gauche, centré, droite) etc...
Pour les images les paramètres peuvent être: width, height, etc...

C'est parce qu'on utilise des paramètres différents pour la publicité du reste du site Web que les bloqueurs de publicité Arrive facilement différencier les éléments publicitaires du site Web
Solution pour du texte : éviter d'utiliser des polices ou des paramètres de police différent du site Web

Solution pour les images : utilisation de paramètres automatiques (auto) ou changer régulièrement la taille de quelques pixels

4: Une page HTML est structurée en blocs
pour identifier un sous-bloc de la page, les bloqueurs utilisent un codage de ce type(##.container > .content > table:nth-of-type(1) > tbody > tr > td)
tout le contenu se trouvant dans cette partie de la page sera supprimé, quelque soit son contenu
ici, ce n'est plus le contenu qui est identifié, c'est le contenant, l'endroit dans la page qui est identifié et est supprimé
la plupart des sites Web, utilisent une présentation statique, les publicités se trouvent toujours aux mêmes endroits, même si l'on utilise les techniques précédentes
pour camoufler les éléments publicitaires, ils seront quand même supprimés car c'est une partie de la page qui est identifiée à être supprimé par les bloqueurs de publicité

Solution 1: ajouter des sous blocs vides horizontaux et verticaux dans la page de façon aléatoire pour décaler la position logique des éléments publicitaires (le visuel de la page ne sera pas modifié)
pour éviter que les bloqueurs de publicité ne supprime les sous blocs vides, l'on peut remplir les sous blocs vides d'images à zéro pixel ou à couleur transparente ou
de texte à taille de police à zéro ou en couleur transparente)

Solution 2: il faut que les éléments publicitaires ne soient pas chaque fois aux mêmes endroits dans la page HTML
Cette seconde méthode, est de faire plusieurs pages contenant les mêmes éléments mais disposés différemment,
au moment où le client vient visiter le site, le serveur lui envoie une page aléatoire
(il y aura les mêmes informations, les mêmes éléments mais disposés différemment, comme ça le bloqueur ne pourra pas identifier et effacer la zone contenant la publicité )


Aussi mettre comme titre de cadres les mots pub, publicité, AD's Etc... est à proscrire, car c'est faciliter le travail des bloqueurs de publicité (en identifiant pour eux la zone
publicitaire)

5: Pour camoufler les éléments script (Java ou flash etc.), il faut faire plusieurs opérations:
camoufler le nom de l'élément par renommage
camoufler les éléments internes ( noms de variables, de fonctions etc.) en les renommant

En résumé, les éléments script sont très difficiles à protéger, il vaut mieux donc éviter de les utiliser à des fins publicitaires
ou alors, utiliser du code s'exécutant côté serveur (sur lequel les bloqueurs de publicité n'ont aucune possibilité d'interaction)


Si vous utilisez mes solutions, je vous serai gré, d'y afficher, en bas de toute page protégée, cette phrase
"les publicités sont protégées par une découverte de David Willems de Verviers"