Qnap [ Caddy V2 ] [ 2.6.2.0 ] Fast, cross-platform HTTP/2 web server with automatic HTTPS

QoolBox

Représentant QNAP
2 Janvier 2014
10 559
163
153
49
France
www.qnap.com
image4219.png


source : https://caddyserver.com/

Download : x64,x41,x31,x19,arm64


Note :

web server which is gaining popularity due to its overall simplicity… welcome to the world of Caddy web server! This web server is entirely written in Go, and was first released in 2015. Caddy configuration is based on Caddyfile

as default : Caddy serve QTS web over port 20016

caddy binary is automatically in NAS $PATH

https://github.com/caddyserver/examples/blob/master/drupal/Caddyfile for some CaddyFile example
 
Dernière édition:
Super, merci Stéphane !

Un jour je trouverai le temps et courage de migrer sur la version 2 (mais il faut que je réécris tout du début !)

Sent from my ONEPLUS A5000 using Tapatalk

 
v2.4.0


Caddy v2.4.0 is our first stable release of 2021, ushering in over 110 patches including new features and bug fixes. Thank you to the many contributors who helped make this possible!
Code:
Highlights:

Secure remote management. You can now enable secure remote access to Caddy's admin API! It uses TLS mutual authentication, and you can even define permissions for different users. PR #3994
Config pull at start. Caddy can be configured to load a different config at startup. This is useful if your config is federated through a separate system that doesn't have the ability to push configs to Caddy. This feature is modular, so configurations can be loaded different ways! PR #3994
Server identity management. Caddy can automatically manage its own server identity certificate, which can be used when negotiating TLS connections with peers. This is required when enabling the secure admin API. PR #3994
Self-upgrade command. The new caddy upgrade command will replace the current Caddy binary with an upgraded one from our website, with all the same modules installed, including third-party plugins that are registered on our site! (We can use this code to add/remove modules later, too.)
Configure other apps from the HTTP Caddyfile. The global options block of the Caddyfile now allows configuration of Caddy apps other than HTTP (for example, dynamic_dns to keep DNS records pointed at your server with a dynamic IP address).
Caddyfile fmt lint check. When running with a Caddyfile, Caddy will emit a warning if the Caddyfile is not formatted with caddy fmt.
New abort directive. The abort directive is a special case of the static_response HTTP handler that prevents an HTTP response by aborting the handler chain immediately and forcefully closing the connection.
New error directive. The error directive returns internal error values in the HTTP handler chain, as if an HTTP error had occurred, causing your error routes to be invoked.
Configure response interception from Caddyfile. The reverse_proxy is capable of intercepting responses from the backend, and now this is exposed in the Caddyfile with handle_response.
Better caddy list-modules output. Now modules are organized by standard and non-standard modules, so you can easily see if a Caddy build has been customized.
Configure logging from Caddyfile. The process logs can now be configured from the global options of the Caddyfile.
Better content negotiation. The file server can now be configured to serve precompressed sidecar files, and content encoding preferences are better configured and honored.
Dark mode in directory listings. The file server's "browse" file listings now has a dark mode.
⚠️ Removed the logfmt log encoder. It was broken anyways, and its deprecation has been warned in previous releases.
⚠️ Deprecated common_log format. It will be removed in a future release. Issue #4148
⚠️ Deprecated health_path in reverse_proxy directive. It has been replaced with health_uri and will be removed in the future.
Numerous bug fixes and improvements. Thanks for the detailed, helpful bug reports! We appreciate your collaboration in making Caddy better.
New content for sponsors
I've started writing high-quality, in-depth chatpers about how to get the most out of Caddy in my new Expert Caddy series, exclusively for sponsors! If you or your company are sponsoring, you can have access to this content, which I'll continue adding to over time.

If you aren't sponsoring yet, please do so! Sponsorships fund my full-time development of Caddy, and that's especially vital if your business relies on Caddy.

Changelog (since RC 1)
For a detailed list of all commits since v2.3.0, please refer to prior pre-release changelogs.

bc22102 caddyfile: Fix caddy fmt nesting not decrementing (#4157)
d4b2f1b caddyhttp: Fix fallback for the error handler chain (#4131)
61642b7 caddytls: Run replacer on ask URL, for env vars (#4154)
7776471 encode: Default to order the formats are enabled for prefer in Caddyfile (#4151)
f5db41c encode: Drop prefer from Caddyfile (#4156)
74f5d66 fileserver: Fix file matcher with empty try_files (#4147)
3cf443f httpcaddyfile: Add grace_period global option (#4152)
a17c3b5 reverseproxy: Minor logging improvements
 
2.5.1

Changelog​

  • ec86a2f caddyfile: Shortcut for remote_ip for private IP ranges (#4753)
  • dcc98da caddyhttp: Improve listen addr error message for IPv6 (#4740)
  • d543ad1 caddypki: Fix caddy trust command to use the correct API endpoint (#4730)
  • 2e4c091 cmd: Fix unix socket addresses for admin API requests (#4742)
  • af73215 httpcaddyfile: Fix duplicate access log when debug is on (#4746)
  • 0be3d99 logging: Implement rename filter, changes field key names (#4745)
  • 3017b24 logging: Use RedirectStdLog to capture more stdlib logs (#4732)
  • f7be0ee map: Prevent output destinations overlap with Caddyfile shorthands (#4657)
  • 4a223f5 reverseproxy: Fix Caddyfile support for replace_status (#4754)
  • 40b193f reverseproxy: Improve hashing LB policies with HRW (#4724)
  • e7fbee8 reverseproxy: Permit resolver addresses to not specify a port (#4760)
  • f6900fc reverseproxy: Support performing pre-check requests (#4739)
  • e84e19a templates: Add custom template function registration (#4757)
  • 3ab6483 templates: Add missing backticks in docs (#4737)
 

v2.5.2


This patch release fixes bugs, adds some new features, and makes worthwhile enhancements. We recommend everyone test and upgrade!
Many improvements have been made to the reverse_proxy module.
Highlights:
  • New /adapt admin endpoint: Use your installed config adapters via API in addition to the existing caddy adapt CLI command.
  • New Etag/If-Match support for config API: Safely update your config concurrently and avoid collisions by using our unique Etag implementation.
  • Rename copied headers from reverse_proxy: If you're using handle_response, you can more easily map headers to a different name for clients.
  • Many HTTP matchers have been added to CEL: You can now use the logic of our HTTP request matchers in CEL expressions.
  • Notable bug fixes: EAB reuse, various QUIC & HTTP/3 fixes, more specific HTTP status codes, various reverse proxy fixes.

Changelog​

  • 660c59b admin: Implement /adapt endpoint (close #4465) (#4846)
  • ad3a83f admin: expect quoted ETags (#4879)
  • f259ed5 admin: support ETag on config endpoints (#4579)
  • 1498132 caddyhttp: Log error from CEL evaluation (fix #4832)
  • 0a14f97 caddytls: Make peer certificate verification pluggable (#4389)
  • 412dcc0 caddytls: Reuse issuer between PreCheck and Issue (#4866)
  • 499ad6d core: Micro-optim in run() (#4810)
  • c0f76e9 fileserver: Use safe redirects in file browser
  • 58e05ca forwardauth: Fix case when copy_headers is omitted (#4856)
  • 0b6f764 forwardauth: Support renaming copied headers, block support (#4783)
  • 8bac134 go.mod: Bump up quic-go to v0.28.0, fixes for BC breaks (#4867)
  • 3d18bc5 go.mod: Update go-yaml to v3
  • 5601393 go.mod: Update some dependencies
  • 8e6bc36 go.mod: Upgrade some dependencies
  • 53c4d78 headers: Only replace known placeholders (#4880)
  • 0bcd02d headers: Support wildcards for delete ops (close #4830) (#4831)
  • 58970ca httpcaddyfile: Add {err.*} placeholder shortcut (#4798)
  • b687d7b httpcaddyfile: Support multiple values for default_bind (#4774)
  • a926779 reverseproxy: Add --internal-certs CLI flag #3589 (#4817)
  • aaf6794 reverseproxy: Add renegotiation param in TLS client (#4784)
  • 54d1923 reverseproxy: Adjust new TLS Caddyfile directive names (#4872)
  • 7f9b1f4 reverseproxy: Correct the tls_server_name docs (#4827)
  • c82fe91 reverseproxy: Dynamic ServerName for TLS upstreams (#4836)
  • d6bc9e0 reverseproxy: Err 503 if all upstreams unavailable
  • 98468af reverseproxy: Fix double headers in response handlers (#4847)
  • 25f1051 reverseproxy: Fix panic when TLS is not configured (#4848)
  • 5e729c1 reverseproxy: HTTP 504 for upstream timeouts (#4824)
  • f9b42c3 reverseproxy: Make TLS renegotiation optional
  • b6e96fa reverseproxy: Skip TLS for certain configured ports (#4843)
  • 57d27c1 reverseproxy: Support http1.1>h2c (close #4777) (#4778)
  • 9864b13 reverseproxy: api: Remove misleading 'healthy' value
  • 693e9b5 rewrite: Handle fragment before query (fix #4775)
  • 6891f7f templates: Add humanize function (#4767)
  • 9e760e2 templates: Documentation consistency (#4796)
 
  • J'aime
Réactions: giopas
v2.6.2 Latest


This release brings a number of bug fixes and minor enhancements. All users should upgrade after testing and verifying their setups. Thank you to all who contributed!
If you are coming from < 2.6, please see the 2.6 release notes because a lot is new!

Changelog​

  • 037dc23 admin: Use replacer on listen addresses (#5071)
  • 498f32b caddyconfig: Implement retries into HTTPLoader (#5077)
  • 9873ff9 caddyhttp: Remote IP prefix placeholders
  • 61822f1 caddyhttp: replace placeholders in map defaults (#5081)
  • e07a267 caddytest: Revise sleep durations
  • 253d97c core: Chdir to executable location on Windows (#5115)
  • ab720fb core: Fix ListenQUIC listener key conflict
  • e3e8aab core: Refactor and improve listener logic (#5089)
  • e4fac12 core: Set version manually via CustomVersion (#5072)
  • f7c1a51 fastcgi: Redirect using original URI path (fix #5073)
  • 2be56c5 fileserver: Treat invalid file path as NotFound (#5099)
  • b1d04f5 fileserver: better dark mode visited link contrast (#5105)
  • 33f60da fileserver: stop listing dir when request context is cancelled (#5131)
  • 2153a81 forwardauth: Canonicalize header fields (fix #5038) (#5097)
  • fe91de6 go.mod: Upgrade select dependencies
  • 7041970 headers: Support repeated WriteHeader if 1xx (fix #5074)
  • d46ba2e httpcaddyfile: Fix metrics global option parsing (#5126)
  • 6bad878 httpcaddyfile: Improve detection of indistinguishable TLS automation policies (#5120)
  • 2808de1 httpcaddyfile: Skip automate when auto_https off is specified (#5110)
  • 3e1fd2a httpcaddyfile: Wrap site block in subroute if host matcher used (#5130)
  • 9e1d964 logging: Add time_local option to use local time instead of UTC (#5108)
  • 01e192e logging: Better console encoder defaults (#5109)
  • 99ffe93 logging: Fix skip_hosts with wildcards (#5102)
  • ea58d51 logging: Perform filtering on arrays of strings (where possible) (#5101)
  • 5e52bbb map: Remove infinite recursion check (#5094)
  • b4e28af replacer: working directory global placeholder (#5127)
  • e2991eb reverseproxy: On 103 don't delete own headers (#5091)
  • 2a8c458 reverseproxy: Parse humanized byte size (fix #5095)
  • d055692 reverseproxy: fix upstream scheme handling in command (#5088)
  • 013b510 rewrite: Only trim prefix if matched