v2.7.0-beta.1
版本发布时间: 2023-05-17 01:22:16
caddyserver/caddy最新发布版本:v2.8.0-beta.2(2024-05-08 00:53:37)
This is our first beta release of Caddy 2.7! Please try it out before we tag the stable release.
Highlights
- :warning: The
ask
endpoint is now required to enable On-Demand TLS (b97c76fb4789b8da0b80f5a2c1c1c5bebba163b5) for catch-all or wildcard hosts. Our docs have always mentioned this is required in production environments, but now the code enforces it. Theask
endpoint is not required for local-only or internal-only names (#5384 and a7af7c486e5240da974e02b7dfee9d265aaa654a). - New default template for the file server's "browse" listings - more modern, easier to use, grid view, filetype-specific icons, and better dark mode (see #5427 for more screenshots and info)
- Reverse proxy now supports the PROXY protocol (#5424)
- Caddyfile import arg placeholders support slice syntax, e.g.
{args[2:]}
(#5249) - Experimental new short flags for the CLI. (#5379)
- HTTP/3 performance improvements (upstream in quic-go) including enabling 0-RTT.
- Caddyfile now supports Heredoc syntax for long embedded strings/documents. (#5385)
- @francislavoie implemented a suite of enhancements to bring you more reliable, trustworthy client IP information, even through proxies and CDNs (#5104)
- :warning: The long-deprecated
lookup_srv
feature of the reverse proxy has been removed. It was replaced with the dynamic upstreams feature in 2.6. (#5396) - Customizable "fallback" policy for reverse proxy in case the primary policy isn't applicable (#5488)
- EXPERIMENTAL: Define "named routes" to reuse them without copying. Caddyfile snippets are useful for reusing config, but reusing the same HTTP routes involves lots of copied config and memory bloat. Named routes let you define a route once and reuse it throughout your HTTP server without copying. It is available for JSON and Caddyfile configs. (#5107)
- Many many bug fixes you may or may not notice :upside_down_face:
Thank you to everyone who contributed! And thank you to our sponsors who truly make this project possible.
New Contributors
- @esell made their first contribution in https://github.com/caddyserver/caddy/pull/5417
- @krak3n made their first contribution in https://github.com/caddyserver/caddy/pull/5147
- @trea made their first contribution in https://github.com/caddyserver/caddy/pull/5435
- @heimoshuiyu made their first contribution in https://github.com/caddyserver/caddy/pull/5464
- @gucki made their first contribution in https://github.com/caddyserver/caddy/pull/5424
- @kidonng made their first contribution in https://github.com/caddyserver/caddy/pull/5475
- @taophp made their first contribution in https://github.com/caddyserver/caddy/pull/5497
- @eanavitarte made their first contribution in https://github.com/caddyserver/caddy/pull/5515
- @jonatan5524 made their first contribution in https://github.com/caddyserver/caddy/pull/5521
- @jjiang-stripe made their first contribution in https://github.com/caddyserver/caddy/pull/5531
- @TP-O made their first contribution in https://github.com/caddyserver/caddy/pull/5504
Full Changelog: https://github.com/caddyserver/caddy/compare/v2.6.4...v2.7.0-beta.1
Changelog
- 3f20a7c9 acmeserver: Configurable
resolvers
, fix smallstep deprecations (#5500) - b1366c7e build(deps): bump actions/setup-go from 3 to 4 (#5474)
- f3379f65 caddyfile: Fix heredoc fuzz crasher, drop trailing newline (#5404)
- 960150bb caddyfile: Implement heredoc support (#5385)
- 8bc05e59 caddyfile: Implement variadics for import args placeholders (#5249)
- 53b6fab1 caddyfile: Stricter parsing, error for brace on new line (#5505)
- cfc85ae8 caddyhttp: Add a getter for Server.name (#5531)
- 05e99745 caddyhttp: Determine real client IP if trusted proxies configured (#5104)
- c05e3898 caddyhttp: Enable 0-RTT QUIC (#5425)
- 85375861 caddyhttp: Fix
vars_regexp
matcher with placeholders (#5408) - 1c9ea011 caddyhttp: Impl
ResponseWriter.Unwrap()
, prep for Go 1.20'sResponseController
(#5509) - cbf16f6d caddyhttp: Implement named routes,
invoke
directive (#5107) - 2b3046de caddyhttp: Log request body bytes read (#5461)
- 96919acc caddyhttp: Refactor cert Managers (fix #5415) (#5533)
- d8d87a37 caddyhttp: Serve http2 when listener wrapper doesn't return *tls.Conn (#4929)
- 808b05c3 caddyhttp: Update quic's TLS configs after reload (#5517) (fix #4849)
- a7af7c48 caddytls: Allow on-demand w/o ask for internal-only
- a02ecb0f caddytls: Check for nil ALPN; close #5470 (#5473)
- faf0399e caddytls: Configurable fallback SNI (#5527)
- e16a8868 caddytls: Eval replacer on automation policy subjects (#5459)
- be53e432 caddytls: Relax the warning for on-demand (#5384)
- b97c76fb caddytls: Require 'ask' endpoint for on-demand TLS
- 0cc49c05 caddytls: Zero out throttle window first (#5443)
- b301a3df celmatcher: Implement
pkix.Name
conversion to string (#5492) - 096971e3 ci/cd: ship tarballs with vendored deps (#5403)
- 5ded5804 cmd: Adjust documentation for commands (#5377)
- 508cf2aa cmd: Create pidfile before config load (close #5477)
- 9e691955 cmd: Expand cobra support, add short flags (#5379)
- 5ebb7d49 cmd: Reduce spammy logs from --watch
- 79de6df9 cmd: Strict unmarshal for validate (#5383)
- 205b1426 cmd: Support
'
quotes in envfile parsing (#5437) - bf54892a cmd: make
caddy fmt
hints more clear (#5378) - f6bab8ba context: Rename func to
AppIfConfigured
(#5397) - 99d47050 core: Eliminate unnecessary shutdown delay on Unix (#5413)
- c6ac350a core: Return default logger if no modules loaded
- b3f0cea2 encode: flush status code when hijacked. (#5419)
- c8032867 fastcgi: Fix
capture_stderr
(#5515) - 571fc034 feature: watch include directory (#5521)
- f9bd2d3e fileserver: Add color-scheme meta tag (#5475)
- 6cc3cbbc fileserver: New file browse template (#5427)
- 94d41a9d fileserver: Remove trailing slash on fs filenames (#5417)
- 52d7335c fileserver: Use EscapedPath for browse (#5534)
- 1af419e7 go.mod: Update some dependencies
- 774f2288 go.mod: Upgrade CertMagic
- 0de6064c go.mod: Upgrade CertMagic again
- 9e943319 go.mod: Upgrade dependencies
- 8cb1bb4a go.mod: Upgrade quic-go to v0.33.0 (Go 1.19 min)
- 36546cd8 go.mod: Upgrade several dependencies
- e8352aef headers: Add > Caddyfile shortcut for enabling defer (#5535)
- dd86171d headers: Support deleting all headers as first op (#5464)
- 330be2d8 httpcaddyfile: Adjust path matcher sorting to solve for specificity (#5462)
- 1aef807c log: Make sink logs encodable (#5441)
- cdce452e logging: Actually honor the SoftStart parameter
- f0e39817 logging: Add traceID field to access logs when tracing is active (#5507)
- f3e8b9d9 logging: Soft start for net writer (close #5520)
- b6fe5d4b proxyprotocol: Add PROXY protocol support to
reverse_proxy
, add HTTP listener wrapper (#5424) - f5a13a4a replacer: Add HTTP time format (#5458)
- 48598e1f reverseproxy: Add
fallback
for some policies, instead of always random (#5488) - f8b59e77 reverseproxy: Add
query
andclient_ip_hash
lb policies (#5468) - 66e571e6 reverseproxy: Add mention of which half a copyBuffer err comes from (#5472)
- 75b690d2 reverseproxy: Expand port ranges to multiple upstreams in CLI + Caddyfile (#5494)
- 335cd2e8 reverseproxy: Fix active health check header canonicalization, refactor (#5446)
- 2b04e09f reverseproxy: Fix reinitialize upstream healthy metrics (#5498)
- 10b265d2 reverseproxy: Header up/down support for CLI command (#5460)
- b19946f6 reverseproxy: Optimize base case for least_conn and random_choose policies (#5487)
- 4636109c reverseproxy: Remove deprecated
lookup_srv
(#5396) - 2182270a reverseproxy: Reset Content-Length to prevent FastCGI from hanging (#5435)
- 941eae5f reverseproxy: allow specifying ip version for dynamic
a
upstream (#5401) - e3909cc3 reverseproxy: refactor HTTP transport layer (#5369)
- 13a37688 rewrite: use escaped path, fix #5278 (#5504)
- 2943c418 templates: Add
fileStat
function (#5497) - b4205617 tracing: Support autoprop from OTEL_PROPAGATORS (#5147)
1、 caddy_2.7.0-beta.1_buildable-artifact.pem 3.11KB
2、 caddy_2.7.0-beta.1_buildable-artifact.tar.gz 9.07MB
3、 caddy_2.7.0-beta.1_buildable-artifact.tar.gz.sig 96B
4、 caddy_2.7.0-beta.1_checksums.txt 7.34KB
5、 caddy_2.7.0-beta.1_checksums.txt.pem 3.11KB
6、 caddy_2.7.0-beta.1_checksums.txt.sig 96B
7、 caddy_2.7.0-beta.1_freebsd_amd64.pem 3.11KB
8、 caddy_2.7.0-beta.1_freebsd_amd64.sbom 177.89KB
9、 caddy_2.7.0-beta.1_freebsd_amd64.sbom.pem 3.11KB
10、 caddy_2.7.0-beta.1_freebsd_amd64.sbom.sig 96B
11、 caddy_2.7.0-beta.1_freebsd_amd64.tar.gz 13.97MB
12、 caddy_2.7.0-beta.1_freebsd_amd64.tar.gz.sig 96B
13、 caddy_2.7.0-beta.1_freebsd_arm64.pem 3.1KB
14、 caddy_2.7.0-beta.1_freebsd_arm64.sbom 177.41KB
15、 caddy_2.7.0-beta.1_freebsd_arm64.sbom.pem 3.11KB
16、 caddy_2.7.0-beta.1_freebsd_arm64.sbom.sig 96B
17、 caddy_2.7.0-beta.1_freebsd_arm64.tar.gz 12.79MB
18、 caddy_2.7.0-beta.1_freebsd_arm64.tar.gz.sig 96B
19、 caddy_2.7.0-beta.1_freebsd_armv6.pem 3.11KB
20、 caddy_2.7.0-beta.1_freebsd_armv6.sbom 177.26KB
21、 caddy_2.7.0-beta.1_freebsd_armv6.sbom.pem 3.11KB
22、 caddy_2.7.0-beta.1_freebsd_armv6.sbom.sig 96B
23、 caddy_2.7.0-beta.1_freebsd_armv6.tar.gz 13.33MB
24、 caddy_2.7.0-beta.1_freebsd_armv6.tar.gz.sig 96B
25、 caddy_2.7.0-beta.1_freebsd_armv7.pem 3.11KB
26、 caddy_2.7.0-beta.1_freebsd_armv7.sbom 177.26KB
27、 caddy_2.7.0-beta.1_freebsd_armv7.sbom.pem 3.11KB
28、 caddy_2.7.0-beta.1_freebsd_armv7.sbom.sig 96B
29、 caddy_2.7.0-beta.1_freebsd_armv7.tar.gz 13.31MB
30、 caddy_2.7.0-beta.1_freebsd_armv7.tar.gz.sig 96B
31、 caddy_2.7.0-beta.1_linux_amd64.deb 14.56MB
32、 caddy_2.7.0-beta.1_linux_amd64.deb.pem 3.11KB
33、 caddy_2.7.0-beta.1_linux_amd64.deb.sig 96B
34、 caddy_2.7.0-beta.1_linux_amd64.pem 3.1KB
35、 caddy_2.7.0-beta.1_linux_amd64.sbom 177.64KB
36、 caddy_2.7.0-beta.1_linux_amd64.sbom.pem 3.11KB
37、 caddy_2.7.0-beta.1_linux_amd64.sbom.sig 96B
38、 caddy_2.7.0-beta.1_linux_amd64.tar.gz 13.99MB
39、 caddy_2.7.0-beta.1_linux_amd64.tar.gz.sig 96B
40、 caddy_2.7.0-beta.1_linux_arm64.deb 13.27MB
41、 caddy_2.7.0-beta.1_linux_arm64.deb.pem 3.11KB
42、 caddy_2.7.0-beta.1_linux_arm64.deb.sig 96B
43、 caddy_2.7.0-beta.1_linux_arm64.pem 3.11KB
44、 caddy_2.7.0-beta.1_linux_arm64.sbom 177.16KB
45、 caddy_2.7.0-beta.1_linux_arm64.sbom.pem 3.11KB
46、 caddy_2.7.0-beta.1_linux_arm64.sbom.sig 96B
47、 caddy_2.7.0-beta.1_linux_arm64.tar.gz 12.82MB
48、 caddy_2.7.0-beta.1_linux_arm64.tar.gz.sig 96B
49、 caddy_2.7.0-beta.1_linux_armv5.deb 13.82MB
50、 caddy_2.7.0-beta.1_linux_armv5.deb.pem 3.11KB
51、 caddy_2.7.0-beta.1_linux_armv5.deb.sig 96B
52、 caddy_2.7.0-beta.1_linux_armv5.pem 3.11KB
53、 caddy_2.7.0-beta.1_linux_armv5.sbom 177.01KB
54、 caddy_2.7.0-beta.1_linux_armv5.sbom.pem 3.11KB
55、 caddy_2.7.0-beta.1_linux_armv5.sbom.sig 96B
56、 caddy_2.7.0-beta.1_linux_armv5.tar.gz 13.37MB
57、 caddy_2.7.0-beta.1_linux_armv5.tar.gz.sig 96B
58、 caddy_2.7.0-beta.1_linux_armv6.deb 13.82MB
59、 caddy_2.7.0-beta.1_linux_armv6.deb.pem 3.11KB
60、 caddy_2.7.0-beta.1_linux_armv6.deb.sig 96B
61、 caddy_2.7.0-beta.1_linux_armv6.pem 3.11KB
62、 caddy_2.7.0-beta.1_linux_armv6.sbom 177.01KB
63、 caddy_2.7.0-beta.1_linux_armv6.sbom.pem 3.11KB
64、 caddy_2.7.0-beta.1_linux_armv6.sbom.sig 96B
65、 caddy_2.7.0-beta.1_linux_armv6.tar.gz 13.36MB
66、 caddy_2.7.0-beta.1_linux_armv6.tar.gz.sig 96B
67、 caddy_2.7.0-beta.1_linux_armv7.deb 13.79MB
68、 caddy_2.7.0-beta.1_linux_armv7.deb.pem 3.11KB
69、 caddy_2.7.0-beta.1_linux_armv7.deb.sig 96B
70、 caddy_2.7.0-beta.1_linux_armv7.pem 3.11KB
71、 caddy_2.7.0-beta.1_linux_armv7.sbom 177.01KB
72、 caddy_2.7.0-beta.1_linux_armv7.sbom.pem 3.11KB
73、 caddy_2.7.0-beta.1_linux_armv7.sbom.sig 96B
74、 caddy_2.7.0-beta.1_linux_armv7.tar.gz 13.34MB
75、 caddy_2.7.0-beta.1_linux_armv7.tar.gz.sig 96B
76、 caddy_2.7.0-beta.1_linux_ppc64le.deb 12.96MB
77、 caddy_2.7.0-beta.1_linux_ppc64le.deb.pem 3.1KB
78、 caddy_2.7.0-beta.1_linux_ppc64le.deb.sig 96B
79、 caddy_2.7.0-beta.1_linux_ppc64le.pem 3.11KB
80、 caddy_2.7.0-beta.1_linux_ppc64le.sbom 177.77KB
81、 caddy_2.7.0-beta.1_linux_ppc64le.sbom.pem 3.11KB
82、 caddy_2.7.0-beta.1_linux_ppc64le.sbom.sig 96B
83、 caddy_2.7.0-beta.1_linux_ppc64le.tar.gz 12.51MB
84、 caddy_2.7.0-beta.1_linux_ppc64le.tar.gz.sig 96B
85、 caddy_2.7.0-beta.1_linux_s390x.deb 14.24MB
86、 caddy_2.7.0-beta.1_linux_s390x.deb.pem 3.11KB
87、 caddy_2.7.0-beta.1_linux_s390x.deb.sig 96B
88、 caddy_2.7.0-beta.1_linux_s390x.pem 3.11KB
89、 caddy_2.7.0-beta.1_linux_s390x.sbom 177.16KB
90、 caddy_2.7.0-beta.1_linux_s390x.sbom.pem 3.11KB
91、 caddy_2.7.0-beta.1_linux_s390x.sbom.sig 96B
92、 caddy_2.7.0-beta.1_linux_s390x.tar.gz 13.53MB
93、 caddy_2.7.0-beta.1_linux_s390x.tar.gz.sig 96B
94、 caddy_2.7.0-beta.1_mac_amd64.pem 3.11KB
95、 caddy_2.7.0-beta.1_mac_amd64.sbom 178.98KB
96、 caddy_2.7.0-beta.1_mac_amd64.sbom.pem 3.1KB
97、 caddy_2.7.0-beta.1_mac_amd64.sbom.sig 96B
98、 caddy_2.7.0-beta.1_mac_amd64.tar.gz 14.64MB
99、 caddy_2.7.0-beta.1_mac_amd64.tar.gz.sig 96B
100、 caddy_2.7.0-beta.1_mac_arm64.pem 3.11KB
101、 caddy_2.7.0-beta.1_mac_arm64.sbom 178.51KB
102、 caddy_2.7.0-beta.1_mac_arm64.sbom.pem 3.11KB
103、 caddy_2.7.0-beta.1_mac_arm64.sbom.sig 96B
104、 caddy_2.7.0-beta.1_mac_arm64.tar.gz 14.19MB
105、 caddy_2.7.0-beta.1_mac_arm64.tar.gz.sig 96B
106、 caddy_2.7.0-beta.1_src.pem 3.11KB
107、 caddy_2.7.0-beta.1_src.tar.gz 9.22MB
108、 caddy_2.7.0-beta.1_src.tar.gz.sig 96B
109、 caddy_2.7.0-beta.1_windows_amd64.pem 3.11KB
110、 caddy_2.7.0-beta.1_windows_amd64.sbom 179.88KB
111、 caddy_2.7.0-beta.1_windows_amd64.sbom.pem 3.11KB
112、 caddy_2.7.0-beta.1_windows_amd64.sbom.sig 96B
113、 caddy_2.7.0-beta.1_windows_amd64.zip 14.07MB
114、 caddy_2.7.0-beta.1_windows_amd64.zip.sig 96B
115、 caddy_2.7.0-beta.1_windows_arm64.pem 3.11KB
116、 caddy_2.7.0-beta.1_windows_arm64.sbom 179.4KB
117、 caddy_2.7.0-beta.1_windows_arm64.sbom.pem 3.11KB
118、 caddy_2.7.0-beta.1_windows_arm64.sbom.sig 96B
119、 caddy_2.7.0-beta.1_windows_arm64.zip 12.88MB
120、 caddy_2.7.0-beta.1_windows_arm64.zip.sig 96B
121、 caddy_2.7.0-beta.1_windows_armv5.pem 3.11KB
122、 caddy_2.7.0-beta.1_windows_armv5.sbom 179.25KB
123、 caddy_2.7.0-beta.1_windows_armv5.sbom.pem 3.11KB
124、 caddy_2.7.0-beta.1_windows_armv5.sbom.sig 96B
125、 caddy_2.7.0-beta.1_windows_armv5.zip 13.56MB
126、 caddy_2.7.0-beta.1_windows_armv5.zip.sig 96B
127、 caddy_2.7.0-beta.1_windows_armv6.pem 3.1KB
128、 caddy_2.7.0-beta.1_windows_armv6.sbom 179.24KB
129、 caddy_2.7.0-beta.1_windows_armv6.sbom.pem 3.11KB
130、 caddy_2.7.0-beta.1_windows_armv6.sbom.sig 96B
131、 caddy_2.7.0-beta.1_windows_armv6.zip 13.55MB
132、 caddy_2.7.0-beta.1_windows_armv6.zip.sig 96B
133、 caddy_2.7.0-beta.1_windows_armv7.pem 3.11KB
134、 caddy_2.7.0-beta.1_windows_armv7.sbom 179.25KB
135、 caddy_2.7.0-beta.1_windows_armv7.sbom.pem 3.11KB
136、 caddy_2.7.0-beta.1_windows_armv7.sbom.sig 96B
137、 caddy_2.7.0-beta.1_windows_armv7.zip 13.52MB