禁用其他网站的iframe嵌入

时间:2016-12-02 17:09:29

标签: javascript iframe referer

我想禁用iframe嵌入页面,从我的网站到其他网站 我做了这个js:

<script type="text/javascript"> if(document.referrer.indexOf("mydomain.com") != -1) { window.location = "http://www.youtube.com/watch_popup?v=oHg5SJYRHA0"; } </script>

脚本有效,但我有page01.php和page02.php

我想在page01.php源代码插入iframe for page02.php

<iframe src="page02.php"></iframe> 

当我这样做时,我被重定向到:

http://www.youtube.com/watch_popup?v=oHg5SJYRHA0

如何解决这个问题? 感谢

3 个答案:

答案 0 :(得分:2)

我建议您使用X-Frame-Options标头。如果您使用的是nginx,则可以在服务器或位置块中添加此行:

block data

当您添加此标头时,如果有人尝试在框架中加载您的页面,现代浏览器将拒绝该请求。请注意,这在旧版浏览器中无效。

答案 1 :(得分:0)

对于WordPress网站,我们可以将下面的代码放在wp-config.php上,它就能完成这项工作。

header('X-Frame-Options: DENY');

有关标题函数here

的更多信息

答案 2 :(得分:0)

接受的答案很好,但是,如果要确保没有站点可以将您的站点放入iFrame中,包括来自相同来源的其他站点,建议使用“ X-Frame-Options DENY”。参见:

https://cheatsheetseries.owasp.org/cheatsheets/Clickjacking_Defense_Cheat_Sheet.html#x-frame-options-header-types

X-Frame-Options-Header-Types