HAProxy修改报文首部

HAProxy修改报文首部

HAProxy可以对请求或响应报文的首部进行修改,从而对用户增加或隐藏部分首部信息

在响应报文或请求报文中添加内容

# 在请求报文尾部添加指定的报文
reqadd <string> [{if|unless} <cond>]
# 在响应报文尾部添加指定的报文
rspadd <string> [{if|unless} <cond>]

示例:
在响应报文的尾部添加经过haproxy服务器

listen web
 bind 172.20.27.20:80
 mode http                  #修改报文首部的前提是工作在http模式下
 rspadd x-via:\ haproxy     #响应首部中要添加的内容
 cookie SERVER-COOKIE insert indirect nocache
 option forwardfor
 server web1 192.168.27.21:80 cookie web1 check inter 3000 fall 3 rise 5
 server web2 192.168.27.22:80 cookie web2 check inter 3000 fall 3 rise 5

测试
访问 172.20.27.20

[root@localhost ~]# curl -I 172.20.27.20
HTTP/1.1 200 OK
Server: nginx/1.17.0
Date: Wed, 05 Jun 2019 12:20:19 GMT
Content-Type: text/html
Content-Length: 612
Last-Modified: Tue, 04 Jun 2019 07:35:24 GMT
ETag: "5cf61f3c-264"
Accept-Ranges: bytes
x-via: haproxy              #响应报文投不中出现所添加的内容
Set-Cookie: SERVER-COOKIE=web2; path=/
Cache-control: private

从响应报文或请求报文中删除匹配正则表达式的首部

# 从请求报文中删除匹配正则表达式的首部
reqdel <search> [{if|unless} <cond>]
reqidel <search> [{if|unless} <cond>]
# 从响应报文中删除匹配正则表达式的首部
rspdel <search> [{if|unless} <cond>]
rspidel <search> [{if|unless} <cond>]

示例:
删除响应头信息
未删除前

[root@localhost ~]# curl -I 172.20.27.20
HTTP/1.1 200 OK
Server: nginx/1.17.0            #显示了后端server的信息
Date: Wed, 05 Jun 2019 12:20:19 GMT
Content-Type: text/html
Content-Length: 612
Last-Modified: Tue, 04 Jun 2019 07:35:24 GMT
ETag: "5cf61f3c-264"
Accept-Ranges: bytes
x-via: haproxy
Set-Cookie: SERVER-COOKIE=web2; path=/
Cache-control: private

修改配置文件

listen web
 bind 172.20.27.20:80
 mode http
 rspadd x-via:\ haproxy
 rspdel Server:.*       #对要删除的头部进行正则表达式匹配
 cookie SERVER-COOKIE insert indirect nocache
 option forwardfor
 server web1 192.168.27.21:80 cookie web1 check inter 3000 fall 3 rise 5
 server web2 192.168.27.22:80 cookie web2 check inter 3000 fall 3 rise 5

测试

[root@localhost ~]# curl -I 172.20.27.20
HTTP/1.1 200 OK
Date: Wed, 05 Jun 2019 12:38:56 GMT
Content-Type: text/html
Content-Length: 612
Last-Modified: Tue, 04 Jun 2019 07:35:24 GMT
ETag: "5cf61f3c-264"
Accept-Ranges: bytes
x-via: haproxy
Set-Cookie: SERVER-COOKIE=web2; path=/
Cache-control: private

转载于:https://blog.51cto.com/11886307/2406605

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值