mirror of
https://github.com/caddyserver/caddy.git
synced 2025-05-31 04:05:46 -04:00
reverseproxy: Support header selection policy on Host
field (#3653)
This commit is contained in:
parent
e385be9225
commit
fc65320e9c
@ -362,6 +362,13 @@ func (s HeaderHashSelection) Select(pool UpstreamPool, req *http.Request) *Upstr
|
|||||||
if s.Field == "" {
|
if s.Field == "" {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// The Host header should be obtained from the req.Host field
|
||||||
|
// since net/http removes it from the header map.
|
||||||
|
if s.Field == "Host" && req.Host != "" {
|
||||||
|
return hostByHashing(pool, req.Host)
|
||||||
|
}
|
||||||
|
|
||||||
val := req.Header.Get(s.Field)
|
val := req.Header.Get(s.Field)
|
||||||
if val == "" {
|
if val == "" {
|
||||||
return RandomSelection{}.Select(pool, req)
|
return RandomSelection{}.Select(pool, req)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user