Update: see this [comment](https://github.com/caddyserver/caddy/issues/6992#issuecomment-2892620415) for the effect of this bug. As the subject says, using the `intercept` handler with `reverse_proxy` causes duplication of headers received from upstream. Using this Caddyfile: ```caddyfile localhost { log intercept { handle_response { header { Header-Three Value-3 } } } reverse_proxy localhost:8080 } http://localhost:8080/ { header { Header-One Value-1 Header-Two Value-2 } respond "Hello, World!" } ``` Note the headers received by the client: ``` $ curl -v https://localhost/ * Request completely sent off < HTTP/2 200 < alt-svc: h3=":443"; ma=2592000 < content-type: text/plain; charset=utf-8 < content-type: text/plain; charset=utf-8 < date: Mon, 28 Apr 2025 21:15:40 GMT < date: Mon, 28 Apr 2025 21:15:40 GMT < header-one: Value-1 < header-one: Value-1 < header-three: Value-3 < header-two: Value-2 < header-two: Value-2 < server: Caddy < via: 1.1 Caddy < via: 1.1 Caddy < content-length: 13 < * Connection #0 to host localhost left intact Hello, World!% ``` The workaround for `reverse_proxy` is using `handle_response`.