diff --git a/caddytest/integration/caddyfile_adapt/reverse_proxy_health_headers.txt b/caddytest/integration/caddyfile_adapt/reverse_proxy_health_headers.txt index a3d842ab..17adcaa6 100644 --- a/caddytest/integration/caddyfile_adapt/reverse_proxy_health_headers.txt +++ b/caddytest/integration/caddyfile_adapt/reverse_proxy_health_headers.txt @@ -7,6 +7,7 @@ reverse_proxy 127.0.0.1:65535 { X-Header-Keys VbG4NZwWnipo 335Q9/MhqcNU3s2TO X-Empty-Value } + health_uri /health } ---------- { @@ -38,7 +39,8 @@ reverse_proxy 127.0.0.1:65535 { "VbG4NZwWnipo", "335Q9/MhqcNU3s2TO" ] - } + }, + "uri": "/health" } }, "upstreams": [ diff --git a/modules/caddyhttp/reverseproxy/caddyfile.go b/modules/caddyhttp/reverseproxy/caddyfile.go index c37efd07..52282f7b 100644 --- a/modules/caddyhttp/reverseproxy/caddyfile.go +++ b/modules/caddyhttp/reverseproxy/caddyfile.go @@ -361,15 +361,13 @@ func (h *Handler) UnmarshalCaddyfile(d *caddyfile.Dispenser) error { case "health_headers": healthHeaders := make(http.Header) - for d.Next() { - for d.NextBlock(0) { - key := d.Val() - values := d.RemainingArgs() - if len(values) == 0 { - values = append(values, "") - } - healthHeaders[key] = values + for nesting := d.Nesting(); d.NextBlock(nesting); { + key := d.Val() + values := d.RemainingArgs() + if len(values) == 0 { + values = append(values, "") } + healthHeaders[key] = values } if h.HealthChecks == nil { h.HealthChecks = new(HealthChecks)