Error con Google Adsense y Flashtalking

"Del Malware a la certificación como proveedor de servicios".


Hace varios días que vengo trabajando en la nueva versión de uno de mis sitio web, actualizando las librerías utilitarias, modificando la estructura de archivos para que sea más eficiente, etc. Este trabajo puede llegar a ser arduo, si es que impacta al corazón del código fuente, obligándote a tener mucho cuidado.

Llevo más de 15 años desarrollando software y siempre busco que el código fuente no tenga errores, pero terminando de actualizar el sitio, apareció un error a nivel de la capa de presentación, que nunca había visto, mientras revisaba que el sitio web se cargara sin problemas, a través de la consola de Google Chrome.

El error era el siguiente:

Refused to execute script from 'https://servedby.flashtalking.com/imp/8/93602; 3182054; 201; pixel; DCMN; AllotherEMEA/ ?ft_custom=230170542_421955712_102939520 &cachebuster=751299425' because its MIME type ('image/gif') is not executable.

Empecé a buscar información que pudiera ayudarme a entender la causa de este error. Busqué en múltiple foros de tecnología y sólo encontré consultas del año 2013, de gente que pensaba que estaba infectada con un Malware llamado “Flashtalking” y que no sabía cómo eliminarlo de sus computadores.

¿Qué es Flashtalking?

Investigando un poco, encontré que Flashtalking es una empresa que brinda servicios de tecnología publicitaria y que ha sido certificada por Google para ser uno de sus proveedores en esta materia, tanto para los servicio de Ad Exchange, Adwords y Youtube.

Aquí las fuentes de referencia:

Cuando utilizamos Google Adsense para monetizar un sitio web, intentamos aumentar la probabilidad de que el usuario visitante se vea atraído hacia la publicidad que presentamos, colocando avisos en diferente ubicaciones de la página web. Entonces, ¿dónde estaba el problema? Hasta hace poco, el código javascript de los “Bloques de anuncios” podían colocarse en cualquier parte del BODY, incluso está así indicado en la página de ayuda de Google Adsense:

Esta ayuda funciona sin problemas, en el caso de que sólo quieras mostrar un único aviso publicitario en tu página web, pero si repites este código ocasionarás un error similar al explicado.

La solución al problema, consiste en invocar la librería desde el HEAD y el resto del código, en todas las ubicaciones que se desee, en el interior del BODY.

El siguiente ejemplo es similar a cómo se presenta la publicidad en este artículo, debido a que en esta misma página hay dos avisos publicitarios publicados.

Ejemplo:

    <html>
    <head>
    <title>Página HTML de ejemplo</title>
    
    <!-- LIBRERÍA DE GOOGLE ADSENSE -->
    <script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
    
    </head>
    <body>
    
    <p>Primer párrafo de la página</p>
    
    <!-- AVISO PUBLICITARIO -->
    <ins class="adsbygoogle"
    style="display:inline-block;width:728px;height:90px"
    data-ad-client="ca-pub-1234567890123456"
    data-ad-slot="1234567890"></ins>
    <script>
    (adsbygoogle = window.adsbygoogle || []).push({});
    </script>
    
    <p>Segundo párrafo de la página</p>
    
    <!-- AVISO PUBLICITARIO -->
    <ins class="adsbygoogle"
    style="display:inline-block;width:728px;height:90px"
    data-ad-client="ca-pub-1234567890123456"
    data-ad-slot="1234567890"></ins>
    <script>
    (adsbygoogle = window.adsbygoogle || []).push({});
    </script>
    
    <body>
    </html>