aboutsummaryrefslogtreecommitdiffhomepage
AgeCommit message (Collapse)Author
2024-12-05bump x/golang/net versionx-net-0.32WeidiDeng
2024-12-04fileserver: Fix policy `Validate()` oversight (#6727)Francis Lavoie
2024-12-04cmd: Reject multiple configs for fmt command (#6717)Aziz Rmadi
2024-12-03fileserver: Add `first_exist_fallback` strategy for `try_files` (#6699)Kévin Dunglas
* feat: add first_exist_or_fallback strategy for try_files * fix tests * linter
2024-12-02caddyhttp: Add `{?query}` placeholder (#6714)Francis Lavoie
* caddyhttp: Add `{prefixed_query}` placeholder * fastcgi: Preserve query during canonical redirect * Use orig_uri instead for the redirect, shorter Caddyfile shortcut
2024-11-30ci: prevent jobs running on PRs from forks (#6720)Mohammed Al Sahaf
Signed-off-by: Mohammed Al Sahaf <[email protected]>
2024-11-26go.mod: Upgrade quic-go to 0.48.2Matthew Holt
2024-11-23metrics: add `go` and `process` collectors (#6704)Mohammed Al Sahaf
Signed-off-by: Mohammed Al Sahaf <[email protected]>
2024-11-22requestbody: Type-based error handling for `MaxBytesError` (#6701)Rishita Shaw
* fix: handle "request body too large" error using type assertion * fix: address overlooked nil check for MaxBytesError * fix: replace type assertion with errors.As() for MaxBytesError
2024-11-21fastcgi: remove dir redirection when useless in php_fastcgi (#6698)Kévin Dunglas
* perf: remove dir redirection when useless in php_fastcgi * fix test * review * fix * fix * simplify * simplify again * restore test * add test
2024-11-19caddyhttp: Set default ReadHeaderTimeout (1 min)Matthew Holt
Ref. #6663
2024-11-18cmd: ignore missing keys during storage export (#6697)santhoshkumar
2024-11-14chore: make FastAbs comment more easy to understand (#6692)WeidiDeng
2024-11-14chore: Add `provides` to `.deb` releases (#6691)Francis Lavoie
Fixes https://github.com/caddyserver/dist/issues/91
2024-11-13core: Implement FastAbs to avoid repeated os.Getwd calls (#6687)Francis Lavoie
* core: Implement FastAbs to avoid repeated os.Getwd calls * Lint * Rename files
2024-11-12reverseproxy: Revert #4952 - don't ignore context cancellation in stream modeMatthew Holt
i.e. Revert commit f5dce84a7028d1b116db7fead27ff8b2506baf78 Two years ago, the patch in #4952 was a seemingly necessary way to fix an issue (sort of an edge case), but it broke other more common use cases (see #6666). Now, as of #6669, it seems like the original issue can no longer be replicated, so we are reverting that patch, because it was incorrect anyway. If it turns out the original issue returns, a more proper patch may be in #6669 (even if used as a baseline for a future fix). A potential future fix could be an opt-in setting.
2024-11-11httpcaddyfile: Implement log `sampling` config (#6682)Nikolai K
* Allow log sampling configuration from Caddyfile * Add log sampling adapt tests
2024-11-07reverseproxy: Allow `0` as weights for `weighted_round_robin` (#6681)Sucipto
* Allow 0 as weights Change positive to non-negative * reverseproxy: allow 0 as weighted round robin value * test: add more wrr select test --------- Co-authored-by: peanutduck <[email protected]>
2024-11-05ci: use commit sha in goreleaser-check (#6677)Mohammed Al Sahaf
* ci: use commit sha in goreleaser-check Signed-off-by: Mohammed Al Sahaf <[email protected]> * fix output assignment Signed-off-by: Mohammed Al Sahaf <[email protected]> * run only on non-fork or caddyserver repo, and use branch name Signed-off-by: Mohammed Al Sahaf <[email protected]> --------- Signed-off-by: Mohammed Al Sahaf <[email protected]>
2024-11-05go.mod: Update certmagicv2.9.0-beta.3Matthew Holt
2024-11-05caddytls: Allow disabling storage cleaning, avoids writing two files (#6593)Francis Lavoie
2024-11-05rewrite: Don't add / in Caddyfile, do it after replacer (#6662)Francis Lavoie
2024-11-05fileserver: Add `file_limit` option for browse (to be experimental) (#6648)Atakan Yenel
* Add file_limit option for file_server browse * Move file_limit inside browse. * add file_server_file_limit caddyfile adapt test.
2024-11-04go.mod: upgrade only some otel deps (#6676)Mohammed Al Sahaf
Signed-off-by: Mohammed Al Sahaf <[email protected]>
2024-11-04caddyhttp: Add `MatchWithError` to replace SetVar hack (#6596)Francis Lavoie
* caddyhttp: Add `MatchWithError` to replace SetVar hack * Error in IP matchers on TLS handshake not complete * Use MatchWithError everywhere possible * Move implementations to MatchWithError versions * Looser interface checking to allow fallback * CEL factories can return RequestMatcherWithError * Clarifying comment since it's subtle that an err is returned * Return 425 Too Early status in IP matchers * Keep AnyMatch signature the same for now * Apparently Deprecated can't be all-uppercase to get IDE linting * Linter
2024-11-04Fix testsMatthew Holt
2024-11-04forwardauth: Skip copying missing response headers (#6608)Francis Lavoie
2024-11-04go.mod: Update dependenciesMatthew Holt
2024-11-01events: Use `WithLazy` to prevent eager serialization of the event data (#6671)Andreas Kohn
2024-10-31fileserver: Fix Caddyfile parsingMatthew Holt
Reported at https://github.com/mholt/caddy-sqlite-fs/issues/3
2024-10-30httpcaddyfile: Fixes for `prefer_wildcard` mode (#6636)Francis Lavoie
* httpcaddyfile: Fixes for prefer_wildcard mode The wildcard hosts need to be collected first, then considered after, because there's no guarantee that all non-wildcards will appear after all wildcards when looping. Also we should not add a domain to Skip if it doesn't qualify for TLS anyway. * Alternate solution by avoiding adding APs altogether if covered by wildcard
2024-10-30cmd: Allow `add-package` to select version of package (#6665)Lucas VerÍssimo Botelho
* feat: allow versioning of packages * docs: remove xcaddy issue reference
2024-10-22chore: compile without nosql's support for Postgres and MySQL (#6655)Kévin Dunglas
* chore: compile without nosql's support for Postgres and MySQL * Update cross-build.yml * Update cross-build.yml * Update README.md
2024-10-22chore: Bump quic-go to 0.48.1, fixing a panic (#6654)Francis Lavoie
2024-10-22reverseproxy: Sync changes from stdlib for 1xx handling (#6656)Francis Lavoie
* reverseproxy: Sync changes from stdlib for 1xx handling Sourced from https://github.com/golang/go/commit/960654be0c4ad7918376e2e1d47491c9bc7520e0 * Use clear() https://github.com/golang/go/commit/3bc28402fae2a1646e4d2756344b5eb34994d25f
2024-10-21reverseproxy: Fix log messageMatthew Holt
Fixes regression from #6560
2024-10-21tracing: Add `spanID` field to access logs and `http.vars.span_id` ↵Yifan Yang
placeholder (#6646) * logging: Add spanID field to access logs when tracing is enabled Signed-off-by: YifanYang6 <[email protected]> * tracing: add `http.vars.span_id` placeholder when tracing is enabled Signed-off-by: YifanYang6 <[email protected]> --------- Signed-off-by: YifanYang6 <[email protected]>
2024-10-21core: addresses.go funcs renames (#6622)Aaron Paterson
* right side in tls ln * remove ParseNetworkAddressFromHostPort * ignore placeholder port * remove println * update test cases (!!!) * [] * comment * Trim * Update addresses.go
2024-10-21chore: fix some function names in comment (#6650)David Wood
2024-10-20fileserver: fix try_policy when instantiating file matcher from CEL (#6624)Logan Fleur
Co-authored-by: Francis Lavoie <[email protected]>
2024-10-19sigtrap: always ignore SIGPIPE (#6645)Kévin Dunglas
2024-10-18metrics: move `metrics` up, outside `servers` (#6606)Mohammed Al Sahaf
* metrics: move `metrics` up, outside `servers` This change moves the metrics configuration from per-server level to a single config knob within the `http` app. Enabling `metrics` in any of the configured servers inside `http` enables metrics for all servers. Fix #6604 Signed-off-by: Mohammed Al Sahaf <[email protected]> * normalize domain name --------- Signed-off-by: Mohammed Al Sahaf <[email protected]>
2024-10-15caddyhttp: Close http3 server gracefully (#6213)WeidiDeng
* close http3 server gracefully * update server field * update from upstream --------- Co-authored-by: Matt Holt <[email protected]>
2024-10-15chore: update quic-go to v0.48.0 (#6627)Marten Seemann
2024-10-11reverseproxy: Use correct cases for websocket related headers (#6621)WeidiDeng
Co-authored-by: Francis Lavoie <[email protected]>
2024-10-10caddyfile: Fix comma edgecase in address parsing (#6616)Francis Lavoie
2024-10-10docs: expand proxy protocol docs (#6620)Mohammed Al Sahaf
2024-10-10tests: fix caddyfile adapt warnings (#6619)Mohammed Al Sahaf
Signed-off-by: Mohammed Al Sahaf <[email protected]>
2024-10-07caddytls: Drop `rate_limit` and `burst`, has been deprecated (#6611)Francis Lavoie
2024-10-04caddyhttp: Use internal issuer for IPs when no APs configuredMatthew Holt
This fixes a regression in 2.8 where IP addresses would be considered qualifying for public certs by auto-HTTPS. The default issuers do not issue IP certs at this time, so if no APs are explicitly configured, we assign them to the internal issuer. We have to add a couple lines of code because CertMagic can no longer consider IPs as not qualifying for public certs, since there are public CAs that issue IP certs. This edge case is specific to Caddy's auto-HTTPS. Without this patch, Caddy will try using Let's Encrypt or ZeroSSL's ACME endpoint to get IP certs, neither of which support that.