javascript技巧

关注公众号 jb51net

关闭
首页 > 网络编程 > JavaScript > javascript技巧 > iframe嵌套第三方网址不能访问

解决iframe嵌套第三方网址不能访问的各种报错

作者:码农Davi

在一些场景下,我们的网站需要通过iframe标签嵌入第三方厂家的页面,这时候就得通过iframe标签去引入需要嵌入网页的网址了,这篇文章主要给大家介绍了关于解决iframe嵌套第三方网址不能访问的各种报错,需要的朋友可以参考下

第一种报错描述:
Refused to display '嵌套的网址' in a frame because it set 'X-Frame-Options' to 'sameorigin'.

关于X-Frame-Options:

X-Frame-Options 是一个 HTTP 响应头部,用于防止网站被嵌入到其他网站的 iframe 中。该协议定义了一些选项,使网站可以控制在哪些网站中可以嵌入自己的内容,从而防止网站被点击劫持攻击。

X-Frame-Options 协议有三种选项:

1.DENY:拒绝所有网站嵌入。

2.SAMEORIGIN:只允许同源网站嵌入。

3.ALLOW-FROM uri:允许指定的 URI 嵌入。

如果网站设置了 X-Frame-Options 响应头部,浏览器会根据该选项来决定是否允许在 iframe 中显示该网站的内容。这有助于防止网站遭受点击劫持等攻击,并提高网站的安全性。

第二中报错描述
Refused to frame '嵌套的网址' because an ancestor violates the following Content Security Policy directive: "frame-ancestors 'self'

关于 CSPCSP 是一种安全功能,通过指定允许哪些域将网站内容嵌入框架或 iframe 来帮助防止跨站点脚本 (XSS) 攻击。
白话:把你的地址给第三方,让第三方信任你的网址才能嵌套

这两个方式都能使用nginx代码解决

第一种报错解决

	 location / {
            proxy_hide_header X-Frame-Options;
            proxy_pass [你代理的网址];
        }

“proxy_hide_header”指令用于从代理服务器接收的响应中删除“X-Frame-Options”标头。

第二种报错解决

location / {
            proxy_hide_header Content-Security-Policy;
            proxy_hide_header X-Frame-Options;
            proxy_pass https://www.baidu.com;
        }

并隐藏来自该网站的两个响应头:“Content-Security-Policy” 和 “X-Frame-Options”。

总结 

到此这篇关于解决iframe嵌套第三方网址不能访问的各种报错的文章就介绍到这了,更多相关iframe嵌套第三方网址不能访问内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文