Haproxy隐藏后端服务器信息、实现压缩、手机端跳转

简介:

1.隐藏后端服务器版本

在日常工作中我们都会使用haproxy作为负载均衡器,因为后端应用服务器多更改麻烦,因此决定在负载均衡器实现。

只需要再frondend或listen或backend,添加

1
2
3
4
5
         rspidel ^Server:.*
         rspidel ^X-Forwarded-For:.*
         rspidel ^X-Powered-By:.*
         rspidel ^Via:.*
         rspidel ^X-AspNet-Version:*

以上使用可参考rspidel.

另外如果需要迷惑一些人可根据需要添加响应头部,则可以使用rspadd.

1
         rspadd Server:\ AWS


2.Haproxy添加压缩功能(适用于Haproxy 1.5以上版本,1.4及以下版本不支持)

在global中添加

1
2
         tune.comp.maxlevel 9    #压缩级别
         maxcompcpuusage 50      #压缩最大可使用CPU资源为50%

在defaults中添加

1
2
3
         compression algo  gzip     #压缩算法
         compression  type  text /html  text /plain  application /x-javascript  text /css  application /xml  #压缩文件类型
         compression offload     #使用本地压缩方式


3.根据浏览器进行跳转

用户通过手机访问网站,自动跳转到手机站

1
2
3
4
5
acl mobile_agent hdr_sub(User-Agent) -i iphone android mobile ipad ipod    #定义规则客户端标识中有iphone、android、mobile中
acl mobile_site hdr_dom(host) -i  www.abc123.com   #定义访问的主机 
acl redirect_path url_reg -i ^ /p/ (1|2|3|4|5|6|7|8|9) ^/$ ^ /index .    #定义路径,这里的/p/数字开头的,以及/的和/index开头的
acl www_path url_reg -i  source =mobile   #排除具有source=mobile标识,可用于某些用户通过手机端访问电脑版
redirect prefix http: //m .abc123.com drop-query  if  mobile_agent mobile_site redirect_path ! www_path

当然也可以根据写入cookie的方式:(推荐)

1
2
3
4
5
acl mobile_agent hdr_sub(User-Agent) -i iphone android mobile ipad ipod    #定义规则客户端标识中有iphone、android、mobile中
acl mobile_site hdr_dom(host) -i  www.abc123.com   #定义访问的主机 
acl redirect_path url_reg -i ^ /p/ (1|2|3|4|5|6|7|8|9) ^/$ ^ /index .    #定义路径,这里的/p/数字开头的,以及/的和/index开头的
acl site_tag hdr_sub(cookie) PC=1   #通过写入cookie的方式进行排除,只需要加入PC=1(可自定义)这个cookie
redirect prefix http: //m .abc123.com drop-query  if  mobile_agent mobile_site redirect_path ! site_tag

其中前4条都是定义规则,只有第5条才生效的,写法

redirect prefix 替换的路径 drop-query if 规则一 规则二 规则三 !规则四

注意感叹号就是非的意思,也就是排除



本文转自 rong341233 51CTO博客,原文链接:http://blog.51cto.com/fengwan/1692175
相关文章
|
1月前
|
弹性计算 运维 监控
slb后端服务器组(Backend Server Group)关联
阿里云SLB的后端服务器组提供逻辑分组、精细化路由、端口隔离、权重分配与会话保持等功能,便于资源管理、流量控制和故障隔离。通过监听规则、健康检查、标签和API关联,实现灵活的后端资源配置,适应多变的业务需求,确保服务稳定性和资源利用率。
17 1
|
1月前
|
弹性计算 负载均衡 容灾
slb配置后端服务器组
配置阿里云SLB后端服务器组涉及四个主要步骤:创建服务器组、添加ECS实例、关联监听规则和设定负载均衡策略。这使得流量根据业务需求和服务器特性进行转发,便于应用架构的灵活管理和扩展,支持蓝绿部署、灰度发布,并通过多可用区提升系统可用性和容灾能力。
26 3
|
2天前
|
JSON JavaScript 前端开发
服务器通信:使用WebSocket与后端实时交互
【4月更文挑战第24天】WebSocket为解决服务器与客户端实时双向通信问题而生,常用于聊天、游戏和实时通知等场景。本文通过4步教你实现WebSocket通信:1) 客户端使用JavaScript创建WebSocket连接;2) 监听`open`、`message`和`close`事件;3) 使用`send`方法发送数据;4) 使用`close`方法关闭连接。服务器端则需处理连接和数据发送,具体实现依后端技术而定。WebSocket为现代Web应用的实时交互提供了强大支持。
|
7天前
|
小程序 开发者
体验版小程序为何无法访问云端服务器后端接口(请求失败...(已完美解决附加图片))?
体验版小程序为何无法访问云端服务器后端接口(请求失败...(已完美解决附加图片))?
12 0
|
17天前
|
Linux
centos 查看服务器信息 版本cpu
centos 查看服务器信息 版本cpu
12 0
|
1月前
|
弹性计算 负载均衡
slb添加后端服务器
阿里云SLB服务用于流量分发,提升系统可用性和响应速度。添加ECS实例到SLB的步骤包括:登录控制台,选择“弹性计算”->“负载均衡”,找到目标SLB实例,进入详情页,点击“添加后端服务器”。挑选ECS实例,可按ID、名称或标签筛选,设置权重(默认100),并确保ECS实例状态正常,与SLB在同一地域,安全组允许SLB连接。添加后可考虑配置健康检查等高级选项。
14 1
|
1月前
|
弹性计算 负载均衡 网络安全
slb创建后端服务器组
在阿里云SLB服务中创建后端服务器组,需登录控制台,选择目标SLB实例,进入监听器设置,添加后端服务器。选择ECS实例或ENI,设定服务器端口和权重,然后保存设置。此操作将ECS实例纳入SLB的负载均衡与健康检查管理。
17 1
|
1月前
|
存储 数据挖掘 Windows
服务器数据恢复—异常断电导致raid信息丢失的数据恢复案例
由于机房多次断电导致一台服务器中raid阵列信息丢失。该阵列中存放的是文档,上层安装的是Windows server操作系统,没有配置ups。 因为服务器异常断电重启后,raid阵列可以正常使用,所以未引起管理员的注意。后续出现的多次异常断电导致raid报错,服务器无法找到存储设备,进入raid管理模块进行任何操作都会导致操作系统死机。管理员尝试多次重启服务器,故障依旧。
|
17天前
|
前端开发 JavaScript 关系型数据库
从前端到后端:构建现代化Web应用的技术探索
在当今互联网时代,Web应用的开发已成为了各行各业不可或缺的一部分。从前端到后端,这篇文章将带你深入探索如何构建现代化的Web应用。我们将介绍多种技术,包括前端开发、后端开发以及各种编程语言(如Java、Python、C、PHP、Go)和数据库,帮助你了解如何利用这些技术构建出高效、安全和可扩展的Web应用。
|
19天前
|
前端开发 小程序 Java
uniapp上传图片 前端以及java后端代码实现
uniapp上传图片 前端以及java后端代码实现
32 0