当不方便修改响应头X-Frame-Options的时候,可以通过判断页面的自带top对象和self对象,从而限制不允许被嵌套引用
try {
if (top.location.hostname !== self.location.hostname) {
top.location.href = self.location.href;
}
}catch(e) {
top.location.href = self.location.href;
}
也可通过top.location.hostname或者top.location.origin匹配白名单放开部分限制。
建议一般限制非同ip或者非用域名才不许引用;
可以放开同ip(域名)下不同端口引用,白名单条件可完全由前端来控制。
但如果条件允许的话,请通过服务端配置X-Frame-Options来管控,这样隐藏了白名单规则,相对安全些,仅建议。