文章内容

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中加载你信任的内容。


其它相关推荐:

1、nginx http跳转到https

2、linux(centos)系统下nginx 服务器重启,关闭的命令

3、nginx 配置不当导致url_for('')出问题

4、全面了解 Nginx 到底能做什么

5、IIS Apache Nginx 安装SSL证书

分享到:

发表评论

评论列表