如何防止通过iFrame的第三方网站框架加载我的网站页面

如何在页面加载期间发现我的页面作为框架嵌入到其他站点?我想引荐来源请求标头在这里帮不上忙吗?谢谢。

喵喵时光机
浏览 1014回答 3
3回答

HUX布斯

您不能从服务器端检查它,但是可以在页面加载后使用javascript进行检测。比较top和self,如果它们不相同,则表示您处于框架中。此外,某些现代浏览器会使用X-FRAME-OPTIONS标头,该标头可以具有两个值:DENY –如果页面包含在框架中,则阻止呈现页面SAMEORIGIN –与上面相同,除非页面与顶级框架集所有者属于同一域。用户包括无法嵌入框架的Google Picasa。支持标头(最低版本)的浏览器:IE8和IE9歌剧10.50Safari 4铬4.1.249.1042Firefox 3.6.9(带有NoScript的旧版本)

胡说叔叔

Stackoverflow包含一些JS来对其进行测试(master.js)。这是其中的相关部分:if(top!=self){    top.location.replace(document.location);    alert("For security reasons, framing is not allowed; click OK to remove the frames.")}但是请记住,可以禁用JS。
打开App,查看更多内容
随时随地看视频慕课网APP