X-Frame-Options SAMEORIGIN在我的域上阻止iframe


X-Frame-Options SAMEORIGIN blocking iframe on my domain

我正在使用http://www.jacklmoore.com/colorbox以在灯箱中显示url的内容。实现后,colorbox没有显示任何内容。

后来,我在chrome日志中注意到以下错误:

Refused to display document because display forbidden by X-Frame-Options.

因此,在记录之后,我在网站的root.htaccess中添加了以下行:

Header always append X-Frame-Options SAMEORIGIN

允许iframe嵌入到我自己的域中。

但我仍然会遇到错误,我是x-frame的新手,而且我正在开发一个现有的应用程序,所以我认为.htaccess解决方案会很好,但它会被一些代码覆盖吗?请注意,它不在服务器配置中。

尝试发送另一个X-Frame-Options标头,添加

<?php header('X-Frame-Options: GOFORIT'); ?>

到页面顶部。它应该禁用SAMEORIGIN命令。

根据moz-dev页面。以下是的定义

SAMEORIGIN
页面只能显示在与页面本身。

这意味着,只有当你包括一些页面从你的网站会显示
假设

  1. 你有一个网站http://foo.com并且您希望在iframe中显示来自http://foo.com/sec_page它会出现在iframe中
  2. 但是如果嵌入相同的iframe(http://foo.com/sec_page)加载http://bar.com那么它将不显示任何内容。因为起源会改变

您可以在此处阅读完整的注释

您可以从得到的响应中删除标题:

header_remove("X-Frame-Options")

我在httpd.conf:中添加了这个

 Header unset X-Frame-Options

它是有效的。

将XFrame Options设置为DENY或Sameorigin。否则,如果您的网站易受XSS攻击,它可能有助于策划网络钓鱼攻击或帧注入。