文章内容
2024/2/2 1:07:40,作 者: 黄兵
Refused to display 'https://pdf-lib.org/' in a frame because it set multiple 'X-Frame-Options' headers with conflicting values ('ALLOW-FROM https://staticx.dev/, DENY'). Falling back to 'deny'.
最近在配置网站的加载第三方资源的时候,出现了如下错误:
Refused to display 'https://pdf-lib.org/' in a frame because it set multiple 'X-Frame-Options' headers with conflicting values ('ALLOW-FROM https://staticx.dev/, DENY'). Falling back to 'deny'.
出现错误的原因:
这个错误表明服务器在发送HTTP响应头时设置了多个相互冲突的 X-Frame-Options
头。在你的例子中,它同时设置了 ALLOW-FROM https://staticx.dev/
和 DENY
。
根据规范,服务器应该只设置一个 X-Frame-Options
头,因为它指定了有关如何在框架中嵌入页面的规则。在这种情况下,浏览器可能会使用最保守的设置,即 "DENY"。
解决方案:
解决此问题的方法之一解决是冲突的 X-Frame-Options
头。
需要检查服务器配置并删除其中一个头,确保只设置一个正确的 X-Frame-Options
头。
关于如何在 Nginx 中配置 X-Frame-Options 头,可以参考这篇文章:nginx 如何配置 X-Frame-Options
如何在 IIS 7.5 中配置 X-Frame-Options
在IIS 7.5上,你可以通过配置HTTP响应头来允许特定网页在iframe中加载。具体而言,你需要确保服务器的HTTP响应包含允许在iframe中加载的相关头信息。对于X-Frame-Options头,你可以选择将其设置为"ALLOW-FROM"并指定允许加载的域名。
以下是一些步骤,假设你有IIS管理员权限:
- 打开IIS管理器。
- 在左侧导航窗格中,选择你的站点。
- 在中间窗格中,双击“HTTP响应头”选项。
- 在右侧动作窗格中,点击“添加...”以添加新的HTTP响应头。
- 在“名称”字段中输入“X-Frame-Options”。
- 在“值”字段中,输入“ALLOW-FROM https://pdf-lib.org”,用实际域名替换“https://pdf-lib.org”。
- 保存更改并重新启动你的网站。
这将告诉浏览器允许指定域名中的页面在iframe中加载。请注意,使用ALLOW-FROM
需要指定确切的域名,而不是通配符。此外,确保你有权修改IIS设置,并仅在了解安全影响的情况下更改这些设置。
请注意,由于安全原因,允许在iframe中加载可能会增加点击劫持等安全风险。确保仅允许在iframe中加载你信任的内容。
其它相关推荐:
评论列表