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

HAProxy HTTP转HTTPS重定向时Host头被篡改的解决问询

解决HTTPS重定向时Host头被篡改的问题

方案1:强制使用固定域名重定向

直接在重定向规则里指定目标域名,忽略请求中的Host头,确保重定向地址始终正确。修改后的配置如下:

redirect location https://example.com%[capture.req.uri] code 301 if !{ ssl_fc }

%[capture.req.uri]会保留原请求的路径部分,比如用户访问http://example.com/path时,即便Host头被篡改,也会被重定向到https://example.com/path。

方案2:校验Host头合法性后重定向

如果服务需要支持多个合法域名,可以先定义合法Host的白名单,仅对符合条件的请求执行重定向:

  1. 定义ACL匹配合法Host:
acl valid_host hdr(host) -i example.com www.example.com

-i表示忽略大小写,确保Example.com这类格式的请求也能匹配。
2. 结合SSL状态和Host校验执行重定向:

redirect scheme https code 301 if !{ ssl_fc } valid_host
  1. 可选:拦截非法Host的请求
    如果需要拒绝携带恶意Host头的请求,可以添加规则:
http-request deny if !valid_host

这样非法Host的请求会直接被拒绝,不会触发错误的重定向。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.24 01:43:12