X-Frame-Options 拒绝加载:不允许跨域框架

Posted

技术标签:

【中文标题】X-Frame-Options 拒绝加载:不允许跨域框架【英文标题】:Load denied by X-Frame-Options: does not permit cross-origin framing 【发布时间】:2014-11-14 00:51:18 【问题描述】:

我正在使用 laravel 4 进行我的一项开发,我正在尝试使用跨源调用加载 iframe。但它会抛出一个错误,如“”。

我正在尝试设置如下标题:

header('X-Frame-Options: ALLOW-FROM SAMEORIGIN');
header('X-Frame-Options: ALLOW-FROM GOFORIT');

但我仍然遇到上述问题。如果我遗漏了什么,请提出建议。

【问题讨论】:

developer.mozilla.org/en-US/docs/Web/HTTP/X-Frame-Options 【参考方案1】:

当您使用ALLOW-FROM 时,您必须指定一个 URL,而不是替代值。

使用SAMEORIGIN 明确阻止跨源调用。

当使用那个或GOFORIT 时,你必须将它指定为唯一的值。

所以你想要:

header("X-Frame-Options: GOFORIT");

请注意,GOFORIT默认 行为,因此您可能必须删除一些其他拒绝访问的代码。

还要注意X-Frame-Options 标头必须授予来自框架中显示的页面 的权限,而不是包含<iframe> 标记本身的页面。您不能允许自己将其他网站放入框架中。

【讨论】:

以上是关于X-Frame-Options 拒绝加载:不允许跨域框架的主要内容,如果未能解决你的问题,请参考以下文章