通过七层反向代理设置X-Frame-Options参数,实现页面frame防护/加载
#需求
公司监控页面(elk、zabbix、what’s up等)需要做轮询展示,让前端同事写了个浏览器轮询页面。
问题:
多数页面都能成功加载,唯独what’s up页面(网络设备监控软件页面)无法加载;报错信息如下:
#X-Frame-Options知识:
X-Frame-Options 是HTTP响应头用来给浏览器指示,是否允许页面在(iframe或frame或object)中显示的标记。
参数值有3个:
DENY --- 表示页面不允许在frame中展示,相同域名的页面中嵌套也不允许。
SAMEORIGIN --- 表示页面可以在相同域名页面的frame中展示。
ALLOW-FROM --- 表示页面可以在指定来源的frame中展示。
# X-Frame-Options运维 应用场景1(防护)
防止网页被Frame
场景:当开发人员在页面中没有加X-Frame-Options信息返回头部,运维可以帮忙。
思路:nginx和haproxy做负载均衡(七层代理),在返回头中添加SAMEORIGIN信息
nginx
需安装 headers-more-nginx-module模块
#安装
wget http://nginx.org/download/nginx-1.12.2.tar.gz
wget https://github.com/openresty/headers-more-nginx-module/archive/v0.33.tar.gz
tar xf *.gz
yum install -y gcc gcc-c++ make openssl-devel pcre-devel
./configure --prefix=/usr/local/newhope/nginx/ --add-module=/home/newhope/headers-more-nginx-module-0.33/
make
make install
#server 或location配置more_set_headers X-Frame-options SAMEORIGIN;
haproxy
#backend 配置
rspadd X-Frame-Options:\ SAMEORIGINM;
# X-Frame-Options运维 应用场景2(加载页面)
也就是解决下面问题
思路:nginx和haproxy做负载均衡(七层代理),在返回header中删除X-Frame-Options 信息
nginx
more_clear_headers "X-Frame-Options";
haproxy
rspdel X-Frame-Options:\ SAMEORIGIN
**参考文档:
haproxy官方文档:http://cbonte.github.io/haproxy-dconv/1.6/configuration.html#6
第6章 HTTP header manipulation(操纵header头)
转载于:https://blog.51cto.com/11887934/2051191
通过七层反向代理设置X-Frame-Options参数,实现页面frame防护/加载相关推荐
- 一分钟了解四层/七层反向代理
转自公众号:架构师之路 今天花几分钟简单和大家解释一下. 场景:访问用户通过proxy请求被访问的真实服务器 路径:用户 -> proxy -> real-server 什么是代理? 回答 ...
- Nginx四层代理和7层反向代理
Nginx四层代理和7层反向代理 文章目录 Nginx四层代理和7层反向代理 Nginx四层代理配置 Nginx四层代理配置步骤 配置好两台Nginx七层代理服务器 在四层代理的Nginx服务器上做相 ...
- Jenkins 管理界面里提示“反向代理设置有误“的问题解决办法
Jenkins 管理界面出现了反向代理设置有误的错误. 后来发现是因为 Configure System 里的 Jenkins URL 地址设置的和访问地址不一致所致. 我们把这两个地址设置一致就好了 ...
- docker启动nginx代理不上_Docker nginx 反向代理设置
文章目录 [隐藏] 缘起 方案一 方案二 延伸 缘起 最近在公司搭建了一个基于 Gogs 的代码管理系统,以及基于 Kanboard 的任务管理系统等几个内部系统.由于部署在同一台机器上,基于不同的端 ...
- Ubuntu下Apache反向代理设置
Apache可通过mod_proxy*.so系列模块很好的实现正向.反向代理功能,亦可通过反向代理实现负载均衡,本文将讲述基于Apache反向代理实现负载均衡的配置方法. 1.环境配置说明: 代理服务 ...
- (转)Nginx反向代理设置 从80端口转向其他端口
from :http://www.cnblogs.com/wuyou/p/3455381.html Nginx反向代理设置 从80端口转向其他端口 反向代理(Reverse Proxy)方式是指以代理 ...
- 我们重写了七层流量代理BFE的路由转发机制
BFE路由转发模型如下图所示. 以http请求为例,当请求到达BFE时,BFE首先根据请求域名确定租户(哪个业务线),再根据请求的路径确定集群(服务/微服务),然后确定子集群(机房),最后负载均衡选择 ...
- 宝塔反向代理设置的一些坑
在对宝塔的反向代理设置前,先读下这篇文章: Nginx常用反向代理配置规则_JunyouYH的博客-CSDN博客_nginx反向代理规则 然后我说下目标: www.doman.com/api/ 在宝塔 ...
- [html] iOS下页面如何启动加载时显示画面图片?如何设置大小?它有什么好处?
[html] iOS下页面如何启动加载时显示画面图片?如何设置大小?它有什么好处? <link rel="apple-touch-startup-image" href=&q ...
最新文章
- Retrofit 找不到ScalarsConverterFactory
- VSEARCH让你免费使用无内存限制的USEARCH
- redis订阅怎么退出_redis-消息的发布与订阅,高效实现原理详述
- Linux设备驱动--块设备(二)之相关结构体
- amd为什么还用针脚_为什么intel处理器不用针脚,AMD还一直使用针脚呢?
- 修改 VS2013 项目属性的默认包含路径(全局)
- C++多态讲解以及常见面试题
- 安装运行symfony框架编写的edusoho开源程序
- phpthink验证旧密码_忘记MacBook密码解决方法
- jsoup抓取html中的js,使用Jsoup,抓取整个网站(包括图片、js、css)
- 线性回归,最小二乘法 C语言实现
- 【linux】nmap命令使用
- Gerrit新建用户登录时显示Forbidden
- python点击网页_python模拟点击网页按钮实现方法
- 【产业互联网周报】云厂商加速布局政企市场:华为云发布七款新产品;腾讯政务战略升级;钉钉发布数字区县解决方案...
- Android中关于涉及到金钱计算方面的工具类!
- win10,win11 下部署Vicuna-7B,Vicuna-13B模型,gpu cpu运行
- labview虚拟心电监测系统_基于LabVIEW实现的心电监护系统
- git错误:exceeds file size limit of 100.0 MB remote: error: hook declined to update refs/heads/master
- 创建可启动 WinPE 介质|使用 DISM 修改 Windows 映像