当站点有多个 X-Frame-Options 标头时,避免默认拒绝

Posted

技术标签:

【中文标题】当站点有多个 X-Frame-Options 标头时,避免默认拒绝【英文标题】:Avoid defaulting to deny when a site has multiple headers for X-Frame-Options 【发布时间】:2015-11-19 17:00:42 【问题描述】:

当定义了多个X-Frame-Options时,你能避免回退到DENY吗?

显示的错误:

Multiple 'X-Frame-Options' headers with conflicting values ('DENY, SAMEORIGIN') encountered when loading 'https://example.com'. Falling back to 'DENY'.

【问题讨论】:

【参考方案1】:

如果是 nginx,是的,您可以使用 nginx-extras

    sudo apt-get install nginx-extras

现在,如果您不知道您的 nginx 配置文件在哪里,请运行 sudo nginx -t(可能包含其他配置文件)并根据需要调整下一个路径:

    sudo nano /etc/nginx/sites-available/myconfig 或您使用的任何编辑器。

server ... 中,如果要从标题中删除所有值,请添加more_set_headers 'X-Frame-Options:'; 行,或指定

    more_set_headers 'X-Frame-Options: SAMEORIGIN'; 如果你想要那个。这将替换(否决)任何其他标题设置。

    sudo service nginx restart

【讨论】:

以上是关于当站点有多个 X-Frame-Options 标头时,避免默认拒绝的主要内容,如果未能解决你的问题,请参考以下文章

nginx 在浏览器中的多个 X-Frame-Options 标头冲突

“X-Frame-Options”标头无效。 “ ”不是公认的指令

仅删除特定控制器的“X-Frame-Options”标头

为啥以下代理不绕过 X-Frame-Options 标头?

X-Frame-Options 标头不是可识别的指令

如何抑制 X-Frame-Options SAMEORIGIN 响应标头?