可以使用php或nginx等添加X-Frame-Options header来控制frame权限
X-Frame-Options有三个可选的值:
DENY:浏览器拒绝当前页面加载任何Frame页面
SAMEORIGIN:frame页面的地址只能为同源域名下的页面
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文件中加
... ...
js方法
很多都是用这种方放,服务器端设置有时候有问题
if (self.frameElement && self.frameElement.tagName == "IFRAME") {
top.location.href=self.location.href;
}
if (window.frames.length != parent.frames.length) {
top.location.href=self.location.href;
}
if (self != top) {
top.location.href=self.location.href;
}Meta标签方法
css禁止其他人的iframe,允许自己的
以上三个firame不允许
firame google 是我要的.
参考:
https://developer.mozilla.org/en-US/docs/Web/HTTP/X-Frame-Options?redirectlocale=en-US&redirectslug=The_X-FRAME-OPTIONS_response_header