diff options
author | WeidiDeng <[email protected]> | 2024-12-06 05:10:39 +0800 |
---|---|---|
committer | GitHub <[email protected]> | 2024-12-06 05:10:39 +0800 |
commit | c9faf72444e87727390f28237de50608ce9227fc (patch) | |
tree | cebe801547b8aa7c4c26bee5c6ec1e040ffee892 /modules/caddyhttp/replacer.go | |
parent | 182153e827fb36cdc80280c1118fbaed8084366d (diff) | |
parent | a1751adb40fbd2369c044a7fe16ab17e0fdce334 (diff) | |
download | caddy-reverse-proxy-h2-websocket.tar.gz caddy-reverse-proxy-h2-websocket.zip |
Merge branch 'master' into reverse-proxy-h2-websocketreverse-proxy-h2-websocket
Diffstat (limited to 'modules/caddyhttp/replacer.go')
-rw-r--r-- | modules/caddyhttp/replacer.go | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/modules/caddyhttp/replacer.go b/modules/caddyhttp/replacer.go index 2c0f32357..776aa6294 100644 --- a/modules/caddyhttp/replacer.go +++ b/modules/caddyhttp/replacer.go @@ -186,6 +186,11 @@ func addHTTPVarsToReplacer(repl *caddy.Replacer, req *http.Request, w http.Respo return path.Ext(req.URL.Path), true case "http.request.uri.query": return req.URL.RawQuery, true + case "http.request.uri.prefixed_query": + if req.URL.RawQuery == "" { + return "", true + } + return "?" + req.URL.RawQuery, true case "http.request.duration": start := GetVar(req.Context(), "start_time").(time.Time) return time.Since(start), true @@ -239,6 +244,12 @@ func addHTTPVarsToReplacer(repl *caddy.Replacer, req *http.Request, w http.Respo case "http.request.orig_uri.query": or, _ := req.Context().Value(OriginalRequestCtxKey).(http.Request) return or.URL.RawQuery, true + case "http.request.orig_uri.prefixed_query": + or, _ := req.Context().Value(OriginalRequestCtxKey).(http.Request) + if or.URL.RawQuery == "" { + return "", true + } + return "?" + or.URL.RawQuery, true } // remote IP range/prefix (e.g. keep top 24 bits of 1.2.3.4 => "1.2.3.0/24") |