Caddy

Stack Holdings GmbH. · CaddyServer.Caddy

HTTP/2 web server with automatic HTTPS

winget install --id CaddyServer.Caddy --exact --source winget

Latest 2.11.2

Release Notes

Caddy 2.11.2 contains numerous bug fixes and enhancements! I know that's a lame summary but it's really all over the place. Highlights

  • Reverse proxy got a lot of love with certain edge cases related to PROXY protocol, health check port, and closing body on retries. Dynamic upstreams are now tracked which enables passive health checking.
  • Performance improvements for metrics.
  • New tls_resolvers global option to control DNS resolvers for all sites when using the ACME DNS challenge.
  • Log rolling now supports zstd compression; deprecated roll_gzip, which will be removed in the future. Use roll_compression instead.
  • Refined logging and some error messages.
  • Fixed a bug in rewrite handler that could cause some URIs to not be rewritten when URI path is an escaped form of target path. Thanks to @MaherAzzouzi for the report. Security fixes This release fixes two CVEs.
  • @NucleiAv reported a bug in the forward_auth directive that could permit identity injection and potential privilege escalation.
  • @sammiee5311 reported that vars_regexp double-expanded placeholders, allowing some unusual configs to reveal secrets. In addition:
  • Built on Go 1.26.1 (also released today) which patches several CVEs.
  • Our documentation has been updated to note that file system case sensitivity may affect the behavior of the hide option of the file_server handler. Thank you to everyone who contributed, and for our ongoing sponsorships that make this development possible! Changelog
  • 88616e8 api: Add all in-flight requests /reverse_proxy/upstreams (Fixes #7277) (#7517)
  • d935a69 autohttps: Ensure CertMagic config is recreated after autohttps runs (#7510)
  • 5d20adc build(deps): bump github.com/smallstep/certificates (#7535)
  • 9371ee6 build(deps): bump the actions-deps group across 1 directory with 12 updates (#7536)
  • 9798f69 caddyhttp: Avoid nil pointer dereference in proxyWrapper (#7521)
  • dc36082 caddyhttp: Collect metrics once per route instead of per handler (#7492)
  • 174fa2d caddyhttp: Evaluate tls.client placeholders more accurately (fix #7530) (#7534)
  • eac02ee caddyhttp: Limit empty Host check to HTTP/1.1
  • f283062 cmd: Custom binary names through CustomBinaryName and CustomLongDescription (#7513)
  • cd9e166 cmd: Pass configFile, not configFlag, for reload command (#7532)
  • 7b34e31 core: Check whether @id is unique (#7002)
  • 566e710 fileserver: document hide case-sensitivity (F-CADDY-FILESERVER-HIDE-CASE-001) (#7548)
  • 2dd3852 fix(caddyfile): Prevent parser to panic when no token were added by empty {block} (#7543)
  • 2dbcdef forward_auth: copy_headers does not strip client-supplied identity headers (Fixes GHSA-7r4p-vjf4-gxv4) (#7545)
  • ce203aa go.mod: Upgrade x/net
  • 76b198f http: Sort auto-HTTPS redirect routes by host specificity (fixes #7390) (#7502)
  • 7ffb640 httpcaddyfile: Fix missing TLS connection policies when auto_https is default (#7325) (#7507)
  • 45cf61b logging: Ensure slog error level logs don't print stack traces (#7512)
  • 9873752 logging: Support zstd roll compression (#7515)
  • 294dfff logging: add DirMode options and propagate FileMode to rotations (#7335)
  • a6acb39 proxyproto: Generated test coverage (#7540)
  • 11b56c6 reverseproxy: Fix health_port being ignored in health checks (#7533)
  • db29860 reverseproxy: Track dynamic upstreams, enable passive healthchecking (#7539)
  • d7b21c6 reverseproxy: fix tls dialing w/ proxy protocol (#7508)
  • a5e7c6e reverseproxy: prevent body close on dial-error retries (#7547)
  • 2ab043b reverseproxy: query escape request urls when proxy protocol is enabled (#7537)
  • fbfb8fc rewrite: Force recomputing path when escaped path matches rewrite target
  • f145bce tls: Add tls_resolvers global option for DNS challenge configuration (#7297)

Installer type: zip

Architecture Scope Download SHA256
x64 Download 2902D2A278597E4983D70ED6D694FCAB36B29B0B7D109771C59D7DA7147AFAD8
arm64 Download 891073849F5FBAFD7A573FED0C5A09B68AD5590035E4FC5977E0E758FD7EA776

Details

Homepage
https://github.com/caddyserver/caddy
License
Apache-2.0
Publisher
Stack Holdings GmbH.
Support
https://github.com/caddyserver/caddy/issues

Tags

acmeautomatic-httpscaddycaddyfilegogolanghacktoberfesthttphttp-serverhttp3httpsprivacyreverse-proxysecuritytlsweb-server

Older versions (8)

2.11.1
Architecture Scope Download SHA256
x64 Download DE55CC5C227FB03D5D69FCA6ADF0D71E90FDCFAB84C1A314598F25F3BBA83FD2
arm64 Download DD48DBCF0D2D7E97077665CEFA5CE054B72B79AB64DEDCE1DBDE49FB86FCED51
2.10.2
Architecture Scope Download SHA256
x64 Download 9FD1EF9BE5D9B05852B66CCC25F96F23D8651BCAB20779861A745BDFFA273722
arm64 Download 014B4795872678F708F5CD347FD00D81671CD0305284B4A236FFB1898967D840
2.10.1
Architecture Scope Download SHA256
x64 Download 1EC34E4F87A47A7C1C475411036BF1F3B8CB05E5E07124E116BD974053E1C202
arm64 Download 788F9330C6617DBF54DC1A17461A4FA17AFD7839B7F4F5E3745C4F64B82B2CC1
2.10.0
Architecture Scope Download SHA256
x64 Download AEB20676F18E1373586FC781C578E270E1429F71F6F0E0B72D85D55E0EFCA480
arm64 Download 88ECAD03A98722FBCE9095B1FE08B33B406E84E20932513DBE86BE2F19684432
2.9.1
Architecture Scope Download SHA256
x64 Download FC99862101CD015A1FD2C1B38376109B543A5DE5B6FA63ECF35A491B41E3613A
arm64 Download 205001F6FDA5958899AA2980BD534D2AC3E8106A7C6D25345F855A0D6D668398
2.9.0
Architecture Scope Download SHA256
x64 Download 33618441185FA06B8AE7326E506625689C95738FC5BC6FD73302ECACEE8DD52E
arm64 Download A9BDB008EF74931BA72683D4D3409E5E295B9A10EDBFC3745BD0D623955A7CF7
2.7.6
Architecture Scope Download SHA256
x64 Download 769C9A852F1D2ABE87804B32756582D4DCBC9C46BAC4ADAB5C04463FD89C8F6B
arm64 Download 1D162C51877806D20E234C83365DA57D10B30ACE5991A04A34CF31FA723E2BE9
2.6.4
Architecture Scope Download SHA256
x64 Download 11A0E78529C4D195ECB320F375B860BD41246083FA0D45D349D6A06690DE14DE
arm64 Download 4B82ECB1EB1CD907E7E9678CE7B82BB48337BAC4E1D01A32BBE293CF456E0157