下面主要说说几种防止被CrossFrame的方法:
可以使用php或nginx等添加X-Frame-Options header来控制frame权限
X-Frame-Options有三个可选的值:
DENY:浏览器拒绝当前页面加载任何Frame页面
SAMEORIGIN:frame页面的地址只能为同源域名下的页面
ALLOW-FROM:允许frame加载的页面地址
1、php防止方法- header('X-Frame-Options:Deny');
复制代码 2、Nginx防止方法- add_header X-Frame-Options SAMEORIGIN
复制代码 可以加在locaion中- location /
- {
- add_header X-Frame-Options SAMEORIGIN;
- }
复制代码3、Apahe 防止方法 - Header always append X-Frame-Options SAMEORIGIN
复制代码使用后不充许frame的页面会显示一个白板
补充 我写了一段很简单的javascript代码,大家只要将它放入网页源码的头部,那些流氓就没有办法使用你的网页了。- <script type="text/javascript">
- if (window!=top) // 判断当前的window对象是否是top对象
- top.location.href =window.location.href; // 如果不是,将top对象的网址自动导向被嵌入网页的网址
- </script>
复制代码升级一下彻底防止别人用iframe框架嵌套调用自己的网页,如下方法是最可靠的.
这里赋值为空页面,也可赋值为你的页面的url地址. - <script language="javascript">
- if(top != self){
- location.href = "about:blank";
- }
- </script>
- javascript防止网页被别人iframe框架
- </head>
- <body>
- </body>
- </html>
复制代码 上面代码只能防止最简单的,如果对方使用的是利用php curl抓取呢?这样我们需要封对方IP才可以,最常用的就是在于apache或防火墙中把对方IP设置为黑名单了,这样就抓取不了。
|