使用IFrame阻止网址

时间:2009-02-03 16:24:26

标签: javascript html iframe

我正在将一个外部页面加载到IFRAME中,其中包含一个我不想加载的广告。

有没有办法可以为IFRAME中的任何内容设置网址/域黑名单?

4 个答案:

答案 0 :(得分:4)

我假设您正在开发服务器端,某种Web应用程序。

在这种情况下我会达到的目的是像Perl :: HTTP :: Proxy。

不要将IFRAME直接指向外部站点,而是将其指向您自己站点上的“代理”进程(页面,servlet,PHP脚本,无关紧要)。此代码会获取为其提供的网址内容,并在提供修改后的响应之前过滤掉有问题的广告代码。

我无法评论这样做的合法性或道德规范;根据具体情况,有人可能不会对您提供的内容感到高兴,但却没有展示他们正在获取的广告。

答案 1 :(得分:1)

不,如果您可以更改外部页面,那么它可能会导致XSS攻击。你必须依赖AdBlock Plus等等。

答案 2 :(得分:0)

没有。但是有一种方法可以在外部干扰iframe的脚本:

<iframe security="restricted">

这是一个IE6 + -only扩展,请参阅http://msdn.microsoft.com/en-us/library/ms534622(VS.85).aspx

这种机制设计不佳,对于任何类型的实际安全性来说都是一个死机,但如果子页面中的广告依赖于JavaScript来编写iframe(许多广告网络会这样做),那么您可能能够像这样打破它。当然,你也会破坏页面上的任何其他脚本,你可能仍会得到一堆非基于脚本的广告。

不太满意。

答案 3 :(得分:0)

在内部代理请求并在返回之前操作原始HTML?