跳至主要内容
短.be

X-Frame-Options

HTTP 响应头,用于控制页面是否可以被嵌入到 iframe 中,防止点击劫持攻击。

2026年9月5日 · 约 1 分钟阅读

安全

X-Frame-Options 是一个 HTTP 响应头,用于告诉浏览器当前页面是否允许被嵌入到 <iframe>、<frame> 或 <object> 元素中。这是防范点击劫持攻击的主要手段之一。

X-Frame-Options 目前有效的值有两个:DENY (完全禁止嵌入) 和 SAMEORIGIN (只允许同源页面嵌入)。第三个值 ALLOW-FROM uri (允许指定来源嵌入) 已被废弃,根据 MDN 参考文档 (2026 年 7 月更新版),现代浏览器遇到该指令时会忽略整个响应头,也就是说写上 ALLOW-FROM 反而会让保护失效;需要只允许特定来源时应使用 CSP 的 frame-ancestors 指令。另外,该响应头只能通过 HTTP 响应头生效,写在 meta 标签的 http-equiv 中不起作用。

在 URL 缩短服务中,X-Frame-Options 应该设置为 DENY 或 SAMEORIGIN,防止服务页面被恶意网站嵌入。特别是管理界面和链接创建页面,必须严格限制 iframe 嵌入。

需要注意的是,X-Frame-Options 只能指定一个值,无法同时允许多个不同来源。如果需要更精细的控制,应使用 CSP 的 frame-ancestors 指令,它支持多个来源和通配符。同时设置两者时,应让两者的值保持一致,以便在只识别其中一种的环境中保护也不会中断。

分享到 XHatena

这篇文章对您有帮助吗?

相关术语

相关文章

常见问题

X-Frame-Options 有哪些设置值?
目前有效的是 DENY(禁止所有 iframe 嵌入)和 SAMEORIGIN(仅允许同源嵌入)两种。ALLOW-FROM 已被废弃,现代浏览器遇到它时会忽略整个响应头,因此不应使用。
X-Frame-Options 和 CSP 的 frame-ancestors 有什么区别?
frame-ancestors 是 X-Frame-Options 的后继,可以进行更灵活的控制。优势在于可以指定多个源。两者都设置时 CSP 优先。

把知识用到真实链接上

免费缩短网址