diff options
author | Francis Lavoie <lavofr@gmail.com> | 2023-06-15 19:18:55 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-06-15 17:18:55 -0600 |
commit | 3b19aa2b5a77440f8cb4d11e80937935d187f1cd (patch) | |
tree | 21785c937980122f3ac66cfb393ab885228fd700 /modules/caddyhttp | |
parent | 6a41b62e70f867eff30b38a8ff33e90108077b0f (diff) |
headers: Allow `>` to defer shortcut for replacements (#5574)
Diffstat (limited to 'modules/caddyhttp')
-rw-r--r-- | modules/caddyhttp/headers/caddyfile.go | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/modules/caddyhttp/headers/caddyfile.go b/modules/caddyhttp/headers/caddyfile.go index d7e644c..2b06910 100644 --- a/modules/caddyhttp/headers/caddyfile.go +++ b/modules/caddyhttp/headers/caddyfile.go @@ -247,10 +247,14 @@ func applyHeaderOp(ops *HeaderOps, respHeaderOps *RespHeaderOps, field, value, r respHeaderOps.Set.Set(field, value) case replacement != "": // replace + // allow defer shortcut for replace syntax + if strings.HasPrefix(field, ">") && respHeaderOps != nil { + respHeaderOps.Deferred = true + } if ops.Replace == nil { ops.Replace = make(map[string][]Replacement) } - field = strings.TrimLeft(field, "+-?") + field = strings.TrimLeft(field, "+-?>") ops.Replace[field] = append( ops.Replace[field], Replacement{ |