Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何将X帧选项头添加到一个简单的HTML文件中?

如何将X帧选项头添加到一个简单的HTML文件中?
EN

Security用户
提问于 2017-08-08 10:40:48
回答 3查看 93K关注 0票数 10

我很难将X-Frame-Options头添加到一个简单的HTML中。

有没有办法用JavaScript来做这件事?

EN

回答 3

Security用户

回答已采纳

发布于 2017-08-08 10:48:30

X帧选项头是在服务器端,而不是客户端添加的.这是因为标题用于控制浏览器应如何呈现页面。

任何承载您的文件的服务器都必须添加此标头。

票数 19
EN

Security用户

发布于 2017-08-08 10:48:55

X-Frame-Options是header。因此,它不是HTML的一部分,不能在HTML文档中设置。

它仅是HTTP头的原因之一是,客户端应该能够在解析HTML代码之前决定是否允许将文档嵌入到框架中。

因此,您不能通过编辑文件来实现这一点,但是您需要修改服务器的HTTP响应。通常,这是在web服务器软件或服务器端语言提供的设置中完成的。

例如,Apache中的设置可能如下所示:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Header always append X-Frame-Options DENY

或者,在PHP中,您可以这样设置标题:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<?php header('X-Frame-Options: DENY'); ?>

请注意,还有一个更现代的CSP等效frame-ancestors。但是,虽然某些CSP策略可以设置为<meta>标记,但在这里是不可能的。这样做是行不通的:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<head>
  <!-- This does *not* work! -->
  <meta http-equiv="Content-Security-Policy" content="frame-ancestors 'none'">
</head>

还请看一下点击劫持防御备忘单,以了解除了设置XFO头之外的点击攻击防御措施。

票数 30
EN

Security用户

发布于 2019-01-14 09:07:03

由于您在注释中提到IIS是您的web服务器,所以有一种方法可以在web服务器本身上设置它。

其他几个答案提到将它添加到web.config中,如果这是一个ASP.NET应用程序,这是一个很好的选择,但是对于从IIS提供的任何web应用程序,不管技术如何,还有另一种方法可以工作。

如果打开Internet Information Services (IIS) Manager,并在导航窗格中的Sites下展开节点并突出显示站点,则在“功能视图”窗格中的“IIS功能”组下,有一个名为HTTP Response Headers的功能。如果打开此节点,则在右侧的Actions窗格中,将看到添加标头的操作。只要添加带有X-Frame-Options名称的标头和任何您想要的值,它就会被IIS添加到从该站点提供的每个响应中。

票数 -1
EN
页面原文内容由Security提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://security.stackexchange.com/questions/167081

复制
相关文章

相似问题

重定向时的x帧选项标头

10

我们也需要为JS文件设置X帧选项头吗?

10

MITM能操纵X帧选项吗?

30

一个没有X帧选项的错误页面(比如404)能被利用吗?

10

是否需要使用X帧选项来防止ClickJacking攻击?

20
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文