PHP、Nginx、Apache中禁止网页被iframe引用的方法
可以使用php或nginx等添加X-Frame-Options header来控制frame权限
X-Frame-Options有三个可选的值
DENY浏览器拒绝当前页面加载任何Frame页面
SAMEORIGINframe页面的地址只能为同源域名下的页面
ALLOW-FROM允许frame加载的页面地址
PHP代码:
header(‘X-Frame-Options:Deny');
Nginx配置:
add_header X-Frame-Options SAMEORIGIN
可以加在locaion中
location /
{
add_header X-Frame-Options SAMEORIGIN
}
Apache配置:
Header always append X-Frame-Options SAMEORIGIN
使用后不充许frame的页面会显示一个白板。
IIS方法
在web.config文件中加
<system.webServer> ... <httpProtocol> <customHeaders> <add name="X-Frame-Options" value="SAMEORIGIN" /> </customHeaders> </httpProtocol> ... </system.webServer>
js方法
很多都是用这种方放,服务器端设置有时候有问题
if (self.frameElement && self.frameElement.tagName == "IFRAME") { .location.href=self.location.href; } if (window.frames.length != parent.frames.length) { .location.href=self.location.href; } if (self != ) { .location.href=self.location.href; }
Meta标签方法
<meta http-equiv="X-FRAME-OPTIONS" content="DENY">
css禁止其他人的iframe,允许自己的
<style type="text/css">
iframe{v:expression (this.src='about:blank',this.outerHTML='');}
#mine{v:expression() !important}
</style>
<body> 内容<iframe src="http://.baidu."></iframe> 百度 <iframe src="http://.126./"></iframe> 126邮箱<iframe src="http://.163."></iframe> 网易<p>以上三个firame不允许</p> <p>firame google 是我要的.</p> <p><iframe id="mine" name="myfirame" src="http://.google./" width=800 height=400></iframe></p>
参考
https://developer.mozilla./en-US/docs/Web/HTTP/X-Frame-Options?redirectlocale=en-US&redirectslug=The_X-FRAME-OPTIONS_response_header
编程语言
- 如何快速学会编程 如何快速学会ug编程
- 免费学编程的app 推荐12个免费学编程的好网站
- 电脑怎么编程:电脑怎么编程网咯游戏菜单图标
- 如何写代码新手教学 如何写代码新手教学手机
- 基础编程入门教程视频 基础编程入门教程视频华
- 编程演示:编程演示浦丰投针过程
- 乐高编程加盟 乐高积木编程加盟
- 跟我学plc编程 plc编程自学入门视频教程
- ug编程成航林总 ug编程实战视频
- 孩子学编程的好处和坏处
- 初学者学编程该从哪里开始 新手学编程从哪里入
- 慢走丝编程 慢走丝编程难学吗
- 国内十强少儿编程机构 中国少儿编程机构十强有
- 成人计算机速成培训班 成人计算机速成培训班办
- 孩子学编程网上课程哪家好 儿童学编程比较好的
- 代码编程教学入门软件 代码编程教程