一只优雅的小爬虫诞生记(跟着小虫爬呀爬故事)
1799
2022-07-28
WEB工程师在iframe标签上的讨论一直不嫌少,包括其可以用来跨域,方便开发的特性。但另一方面它又不利于对页面进行SEO优化,并且会降低网站的安全性。说到iframe的安全性问题,利用iframe来非法嵌入正规官方网站的页面,同时在页面两边打着自己产品的标语,宣称自己与大网站合作进而推销自己产品的例子,并不少见。
那么应该如何保护自己的网站不被非法分子利用呢?其实很简单,一小段JS代码即可:
if (window != top)
top.location.href = window.location.href;
通过JS来判断当前页面所处DOM对象是否是最顶层页面,因为在最顶层页面中,window对象即等于top对象,如果不相等即将最顶层的页面(即非法分子的主页面)跳转到iframe中的页面。但是这段代码有一个问题,即自己的网站也无法用iframe嵌入自己的页面。其实很简单,改进一下:
var myDomain = "abc";
var webHost = top.location.href;
var tempArr = webHost.split(".");
if(tempArr.indexOf(myDomain) == -1)
{
if (window != top)
top.location.href = window.location.href;
}
通过top对象的href属性来判断当前顶层页面的域名是否为自己网站的域名即可。只需要把myDomain替换成自己网站域名的二级域名部分。最后只要把这段代码放入页面的onload事件即可完成对网站的保护啦!
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~