mirror of
https://github.com/caddyserver/caddy.git
synced 2026-10-31 08:21:39 -04:00
* headers: Check each ? default on its own and keep the response matcher Several ? defaults in one header block shared one require, so a single field already set on the response blocked all of them. A match in the block was also dropped for the ? fields, so they were set on every response. * headers: Reject a response matcher on a field that also has a ? default A ? default already requires its field to be absent, so a match on the same field in that block could only be dropped or never be true. It is now a Caddyfile error. * headers: Test that the last ? default for a field wins * headers: Allow an absence matcher on a field with a ? default `match header !X-Test` asks for what `?X-Test` already requires, so it loads again. Only a matcher that needs a value on that field is an error.