From 570442bb0dd0aaec84b597cae91f8231870ed18d Mon Sep 17 00:00:00 2001 From: "Junv (via Hermes)" Date: Mon, 13 Jul 2026 11:12:16 +1000 Subject: [PATCH] fix: quote X-Forwarded-For header_up to avoid Caddy v2 replace mode dropping headers - Both /api/* and catch-all handlers now use quoted Caddy placeholder syntax (e.g. "{http.request.header.X-Forwarded-For}") so Caddy evaluates them in 'set' mode instead of failing silently in 'replace' mode. - demo-service-caddy.yaml ConfigMap: also added missing X-Forwarded-For header_up in the catch-all handler (was entirely absent). --- home-apps/demo-service-caddy.yaml | 3 ++- home-apps/demo-service/Caddyfile | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/home-apps/demo-service-caddy.yaml b/home-apps/demo-service-caddy.yaml index c8ee0ad..0605054 100644 --- a/home-apps/demo-service-caddy.yaml +++ b/home-apps/demo-service-caddy.yaml @@ -32,7 +32,7 @@ data: handle /api/* { reverse_proxy localhost:3000 { header_up Host {host} - header_up X-Forwarded-For {http.request.header.X-Forwarded-For}, {remote_host} + header_up X-Forwarded-For "{http.request.header.X-Forwarded-For}, {remote_host}" header_up X-Forwarded-Proto https } } @@ -51,6 +51,7 @@ data: rewrite * /site-content{uri} reverse_proxy localhost:3000 { header_up Host {host} + header_up X-Forwarded-For "{http.request.header.X-Forwarded-For}" header_up X-Forwarded-Proto https header_up Cookie {http.request.header.Cookie} } diff --git a/home-apps/demo-service/Caddyfile b/home-apps/demo-service/Caddyfile index edb46c5..3998f1b 100644 --- a/home-apps/demo-service/Caddyfile +++ b/home-apps/demo-service/Caddyfile @@ -25,7 +25,7 @@ handle /api/* { reverse_proxy localhost:3000 { header_up Host {host} - header_up X-Forwarded-For {http.request.header.X-Forwarded-For}, {remote_host} + header_up X-Forwarded-For "{http.request.header.X-Forwarded-For}, {remote_host}" header_up X-Forwarded-Proto https } } @@ -44,6 +44,7 @@ rewrite * /site-content{uri} reverse_proxy localhost:3000 { header_up Host {host} + header_up X-Forwarded-For "{http.request.header.X-Forwarded-For}" header_up X-Forwarded-Proto https header_up Cookie {http.request.header.Cookie} }