X-Frame-Options头未设置的解决方法

今天来说说,360检测提示X-Frame-Options头未设置的解决方法。首先来说说X-Frame-Options响应头是啥,这里引用一下360官网给出的解释“http://webscan.360.cn/vul/view/id/410415311545821237”:

 

X-Frame-Options HTTP响应头是用来确认是否浏览器可以在frame或iframe标签中渲染一个页面,网站可以用这个头来保证他们的内容不会被嵌入到其它网站中,以来避免点击劫持。

危害:“攻击者可以使用一个透明的、不可见的iframe,覆盖在目标网页上,然后诱使用户在该网页上进行操作,此时用户将在不知情的情况下点击透明的iframe页面。通过调整iframe页面的位置,可以诱使用户恰好点击iframe页面的一些功能性按钮上,导致被劫持。”

360官方给出了一些解决方案:

修改web服务器配置,添加X-frame-options响应头。赋值有如下三种:

(1)DENY:不能被嵌入到任何iframe或frame中。

(2)SAMEORIGIN:页面只能被本站页面嵌入到iframe或者frame中。

(3)ALLOW-FROM uri:只能被嵌入到指定域名的框架中。
也可在代码中加入,在PHP中加入:
header(‘X-Frame-Options: deny’);

 

我们就用  header(‘X-Frame-Options: deny’);   来修复改问题,就以本博客的“emlog”程序来说说:

首先找到你模板中的“header.php”,emlog的模板路径一般是/content/templates/你的模版文件名

打开后在“?>”前加入 header(‘X-Frame-Options: deny’); 即可

点赞

发表评论