v2.0.0
caddyserver/caddyv2.0.0May 4, 2020by github-actions[bot]
AI Summary
This is the stable production release of Caddy 2, focusing on stability and documentation while requiring Go modules for source builds.
Key Highlights
- Production-ready Caddy 2 with a focus on stability.
- Requirement for Go modules to build Caddy from source.
- Improved access logging and listener overlap detection fixes.
Breaking Changes
- Go modules are now required to build Caddy from source.
New Features
- Split path for file matcher
- Access logging improvements
- Listener overlap detection fix
- TLS parsing improvements
Full Release Notes
š It's here! Caddy 2 is ready for production. **[Check out the v2 landing page!](https://caddyserver.com/v2)** š **Please consider [sponsoring](https://github.com/sponsors/mholt) - I work on this full-time, and it would not be possible without continued company and individual sponsors, thank you!** We recommend all users begin to [upgrade](https://caddyserver.com/docs/v2-upgrade). Please spend time in the [documentation](https://caddyserver.com/docs/). We've worked hard to make everything as clear and simple as possible. Once you have tested Caddy 2, deploy it into production. We think you'll be very pleased with the results. Keep in mind that this is just the beginning: "2.0" does not mean the software is perfect, only that it is stable. Its readiness is guided by your feedback! We will continue to develop features, quality-of-life improvements, and bug fixes (2.1 is already slated to have [30+ improvements](https://github.com/caddyserver/caddy/milestone/36)) Thank you to everyone in the community who helpfully reported bugs and contributed over the past year! **[See all commits since RC 3 here.](https://github.com/caddyserver/caddy/compare/v2.0.0-rc.3...v2.0.0)** ### Support: - [Community forum](https://caddy.community/) to ask questions, get community support, and lend your help - [Issue tracker](https://github.com/caddyserver/caddy/issues) for bug reports and dev discussion ### Resources: - [Getting Started](https://caddyserver.com/docs/getting-started) - [Full documentation](https://caddyserver.com/docs/) - [List of community modules](https://caddy.community/t/list-of-caddy-2-modules/7839?u=matt) - [Extending Caddy](https://caddyserver.com/docs/extending-caddy) ## Changelog 9a572635 admin: Close admin endpoint when shutting down (fixes #3269) f5ccb904 admin: Disable host checking if wildcard interface is specified 5ae1a561 caddyhttp: Add split_path to file matcher (used by php_fastcgi) (#3302) f931c26f caddyhttp: Better duration logging ebf07f85 caddyhttp: Fix auto redirects for catch-all HTTPS sites bacf50a5 caddyhttp: Fix common_log format's user ID placeholder (#3300) 83c85c53 caddyhttp: Fix listener overlap detection on Linux 026937fa caddyhttp: Fix trailers when recording responses (fixes #3236) 10db5702 caddyhttp: General improvements to access logging (#3301) a1796c2f caddytls: Adjust DNS challenge structure; clarify some docs 8e426610 caddytls: Finish upgrading to libdns DNS providers for ACME challenges 86a4f2c9 caddytls: Fix namespace tls.dns -> dns.providers c11d0e47 cmd: Clean up, simplify reverse proxy command; fix some edge cases 100d19e3 dangit, of course I would bork my git commit 1fa8c185 go.mod: Remove DNSProviderMaker interface; update to lego 3.6 2609a728 go.mod: Update dependencies including CertMagic (fixes #3202) 97ed9e11 httpcaddyfile: Add nil check to prevent panic, fix validation logic 829e36d5 httpcaddyfile: Don't lowercase placeholder contents (fixes #3264) bca610fb httpcaddyfile: Minor fixes to parsing storage options a77bd1d8 httpcaddyfile: Update tls parsing for DNS providers 295604d6 httpcaddyfile: Why was this code repeated?? 0798459e readme: Fix broken links (#3283) 1b061815 reverseproxy: Don't forget to provision embedded headers handler a507a5bb reverseproxy: Remove circuitbreaker module (see #3331) 76bbb473 reverseproxy: Set X-Forwarded-Proto (closes #3275) (#3276) da8686c4 reverseproxy: always set req.URL.Host with upstream (#3297)