Refused to display 'https://www.xxxxx.com/' in a frame because it set 'X-Frame-Options' to 'sameorigin'.
原因分析
这是因为 X-Frame-Options 响应头的处理策略导致的:
所述 X-Frame-OptionsHTTP 响应报头可以被用来指示一个浏览器是否应该被允许在一个以呈现页面 <frame>,<iframe> 或 <object>。通过确保其内容未嵌入其他网站,网站可以使用此功能来避免 点击劫持 攻击。
只有当访问文档的用户使用浏览器支持时才提供附加的安全性 X-Frame-Options。
X-Frame-Options 有三种可能的指示:
X-Frame-Options: DENY
X-Frame-Options: SAMEORIGIN
X-Frame-Options: ALLOW-FROM https://example.com/
DENY:从其他站点加载时,不仅尝试在框架中加载页面失败,从同一站点加载时尝试这样做将失败(无论站点尝试这样做,页面都不能显示在框架中);
SAMEORIGIN:只要包含在框架中的站点与为页面提供服务的站点相同,仍然可以在框架中使用该页面(该页面只能显示在与页面本身相同的源框架中);
ALLOW-FROM uri:页面只能显示在指定原点的框架中
nginx解决办法
解决办法:
在nginx反向代理中取消跨域限制
新增配置
proxy_hide_header X-Frame-Options; add_header X-Frame-Options SAMEORIGIN always; location ^~ /portal { proxy_hide_header X-Frame-Options; add_header X-Frame-Options SAMEORIGIN always; proxy_pass http://172.16.17.82:8080/portal; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; }
重启nginx,解决ok
发表评论
侧栏公告
寄语
譬如朝露博客是一个分享前端知识的网站,联系方式11523518。
热评文章
标签列表
热门文章
友情链接