You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

HAProxy TCP模式下如何移除Authorization头末尾的Cg==?

解决方案

要在TCP模式的HAProxy中处理带换行符的Authorization头,需先让HAProxy识别并解析HTTP请求,再通过字符串替换移除末尾的Cg==。修改后的完整配置如下:

frontend HAproxy
    mode tcp
    # 识别HTTP请求,启用后续HTTP头处理能力
    tcp-request content accept if HTTP
    # 保留原有捕获Authorization头的配置
    tcp-request content capture req.hdr(Authorization) len 128
    # 替换末尾带有Cg==的Authorization头
    http-request replace-header Authorization ^(Basic .*)Cg==$ \1

backend server
    mode tcp
    server server1 172.16.1.1

关键说明:

  • tcp-request content accept if HTTP:TCP模式下HAProxy默认不解析HTTP头,这条指令让HAProxy仅对HTTP请求启用内容解析,是后续修改请求头的必要前提。
  • http-request replace-header Authorization ^(Basic .*)Cg==$ \1:通过正则匹配以Basic 开头且末尾为Cg==的Authorization头,将其替换为去掉Cg==的核心授权内容(\1对应正则中括号捕获的Basic 加有效Base64编码部分)。

如果需要兼容回车换行(对应Base64编码DQo=)的场景,可将替换规则扩展为:

http-request replace-header Authorization ^(Basic .*)(Cg==|DQo=)$ \1

内容的提问来源于stack exchange,提问作者Nikolo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.26 18:16:04