diff options
-rw-r--r-- | modules/caddyhttp/replacer.go | 2 | ||||
-rw-r--r-- | modules/caddyhttp/replacer_test.go | 4 |
2 files changed, 5 insertions, 1 deletions
diff --git a/modules/caddyhttp/replacer.go b/modules/caddyhttp/replacer.go index b3c7b5d..f595021 100644 --- a/modules/caddyhttp/replacer.go +++ b/modules/caddyhttp/replacer.go @@ -172,7 +172,7 @@ func addHTTPVarsToReplacer(repl *caddy.Replacer, req *http.Request, w http.Respo reqHost = req.Host // OK; assume there was no port } hostLabels := strings.Split(reqHost, ".") - if idx > len(hostLabels) { + if idx >= len(hostLabels) { return "", true } return hostLabels[len(hostLabels)-idx-1], true diff --git a/modules/caddyhttp/replacer_test.go b/modules/caddyhttp/replacer_test.go index bc18c5a..49167ee 100644 --- a/modules/caddyhttp/replacer_test.go +++ b/modules/caddyhttp/replacer_test.go @@ -108,6 +108,10 @@ eqp31wM9il1n+guTNyxJd+FzVAH+hCZE5K+tCgVDdVFUlDEHHbS/wqb2PSIoouLV expect: "example", }, { + input: "{http.request.host.labels.2}", + expect: "<empty>", + }, + { input: "{http.request.tls.cipher_suite}", expect: "TLS_AES_256_GCM_SHA384", }, |