Php 阻止任何人使用IFrame查看我的网站

Php 阻止任何人使用IFrame查看我的网站,php,javascript,iframe,Php,Javascript,Iframe,我已经看过并尝试过了,但不知道在哪里可以阻止一些人通过IFrame或Thickbox浏览我的网站 我想阻止被禁止的成员通过代理网站访问该网站,代理网站使最终用户能够浏览IFrame。我知道没有什么可以充分证明这一点,但这仍然值得一提。啊,但这里是答案。(防框架断开)这是可能的 猜猜是谁发的?答案与我发布的链接类似: if(top != self) { top.onbeforeunload = function() {}; top.location.replace(self.location.

我已经看过并尝试过了,但不知道在哪里可以阻止一些人通过IFrame或Thickbox浏览我的网站

我想阻止被禁止的成员通过代理网站访问该网站,代理网站使最终用户能够浏览IFrame。我知道没有什么可以充分证明这一点,但这仍然值得一提。

啊,但这里是答案。(防框架断开)这是可能的

猜猜是谁发的?答案与我发布的链接类似:

if(top != self) {
 top.onbeforeunload = function() {};
 top.location.replace(self.location.href);
}

看看SO自己Jeff Atwood对这个问题的评论


归根结底,没有可靠的方法可以做到这一点。您可以尝试帧突破,但恶意代码编写者总是能够添加更多的代码,并绕过您可能添加的任何“保护”。

altCognito是对的,您想阻止帧突破

下面是altCognito发给您的源代码

<script type="text/javascript">
if (top.location != self.location)
top.location = self.location;
</script> 

if(top.location!=self.location)
top.location=self.location;
然而,我认为你甚至可能想更进一步。您可能需要进行一系列检查,不仅要查找顶部,还要查找父级和窗口


var self=自我位置;
var top=top.location;
var parent=parent.location;
var window=window.location;
如果(顶部!=自我| |父级!=自我| |窗口!=自我)
窗口=自我;

var isInIframe=(window.location!=window.parent.location)?真:假;
if(isInIframe)
{
警报(“窗口在iframe中”);
//做你想做的
//top.location.href=self.location;
}
其他的
{
警报(“窗口不在iframe中”);
}

您可以在头文件中尝试这个简单的js

if (window.top !== window.self) window.top.location.replace(window.self.location.href);

比我快。我删除了我的答案,因为它几乎与你的答案完全相同。有人对他的杰夫·阿特伍德(Jeff Atwood)博客文章的回复确实有效(事实上,杰夫·阿特伍德(Jeff Atwood)在他的博客文章中提到了他的工作),我更新了我的答案作为回应。我给的帖子更新了,才5天。链接断了。。。无用的答案:(Salkter)-固定链接。这些方法不是,但是还有另一种方法,如第二个链接所示。如果我要在首页上定义一个新的(空白)警报()方法,会发生什么……这个孩子会调用哪个版本?有趣的是,但是如果这个孩子调用了错误的方法…空白警报()将阻止警报显示,从而破坏反帧突破…什么都没有发生。正如我所料。哇。听起来像是代码高尔夫的好候选人!是的,这超出了我的时间限制,因为它是,它看起来好像游戏已经进行了相当长的一段时间。
<script>
   var isInIframe = (window.location != window.parent.location) ? true : false;

  if(isInIframe) 
  {
    alert("Window is in iframe");
    //Do what you want
    //top.location.href=self.location;
  }
  else 
  {
    alert("Window is not in iframe");
  }
</script>
if (window.top !== window.self) window.top.location.replace(window.self.location.href);