javascript - 确定哪个广告向/eyeblaster/addineyev2.html 发出了请求

标签 javascript iframe web frame ads

我有一个使用两个大型在线广告“Remnant”提供商的大型网站。这些提供商会定期启动和停止在我们网站上运行的广告事件。

来自其中一个提供商的广告之一错误地请求:

/eyeblaster/addineyev2.html

我已经确定,当网站上的广告通过 iframe 提供时,某些网站使用了所请求的文件。该文件理论上会绕过跨域限制,以便广告提供商可以使用 iframe 中的 javascript 调整 iframe 的大小。

我通过偶然发现此支持文档确定了该文件的这种用途:

http://support.google.com/dfp_premium/bin/answer.py?hl=en&answer=1085693

我的问题是我们的网站不使用 iframe 来转换广告,因此转到“/eyeblaster/addineyev2.html” URI 的请求会导致 404 错误,并且是不必要的。由于错误来自大型 vendor 提供的 CMS,因此错误会在我们的 Google Analytics(分析)跟踪代码上呈现。这导致我们的明显网页浏览量膨胀。

浏览量膨胀可能非常严重,因为 404 错误页面也包含广告。该 404 页面也可能加载错误广告,从而导致广告的递归循环加载完全相同的“/eyeblaster/addineyev2.html”404 页面。

到目前为止,我还无法看到广告通过 Firebug 或类似的开发人员工具直接向该 URL 发出请求。然而,这个不存在的页面的流量是巨大的,因此违规广告肯定仍在混合中。问题是我无法确定哪个广告被破坏了,所以我无法告诉我们的剩余 vendor 将其删除。两家 vendor 都假装不知道这个问题。

我无法删除 404 错误页面上的 Google 跟踪代码,但我可以向页面添加额外的 JavaScript。

有什么方法可以通过在尝试在 iframe 中请求该页面时导致的 404 错误中添加一些 javascript 来识别导致请求“/eyeblaster/addineyev2.html”的广告?

本质上几乎是一个“框架破坏”脚本,而不是破坏框架,而是提供有关 iframe 元素附近的 HTML 节点的信息?我认为这是有可能的,但目前我还没有看到一条明确的道路。

谢谢!

最佳答案

为避免不必要的跟踪,您应该在 /eyeblaster/addineyev2.html 上放置一个虚拟的空文件。 , 或者,如果您使用 nginx做类似的事情

server {
  ...

  location = /eyeblaster/addineyeV2.html { echo ""; }
}

或更好
server {
  ...

  location = /eyeblaster/addineyeV2.html { return 404 "404 - page not found";}
}

如果您没有静态主机并且无法配置代理服务器,您可以通过 javascript 在 404 页面跟踪中设置条件
if (document.URL.indexOf('/eyeblaster/addineyeV2.html') == -1) {
   doAnalyticsTracking();
}

关于javascript - 确定哪个广告向/eyeblaster/addineyev2.html 发出了请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13462795/

相关文章:

javascript - 响应式菜单在点击时闪烁

python - 线程 Tornado + flask 应用程序的正确方法是什么?

javascript - 如何在 Javascript Laravel Blade 中编写路由 URL?

javascript - 我应该如何将多个变量传递给 jquery ajax 中的 url?

css - 在滚动时更改 div/iframe?

html - 关于 <iframe> 中的滚动条

php - 向 php native 类添加函数?

http - 在本地模拟远程网站进行测试

javascript - 精细上传异步任务在 Chrome 中有效,但在 IE11 中无效

javascript - 调整跨域 iframe 高度