Symlink protection + TLS metrics + load balancing
Release history
ferron releases
A fast, memory-safe web server written in Rust.
All releases
17 shown
- CLI utility for hashing passwords
- CLI utility for pre‑compressing static files
- CLI utility for translating Ferron 2 configurations into Ferron 3 ones
Full changelog
Added
- CLI utility for hashing passwords.
- CLI utility for pre-compressing static files.
- CLI utility for translating Ferron 2 configurations into Ferron 3 ones.
- CLI utility for zero-configuration serving.
Changed
- Non-existent webroots now lead to 404 Not Found errors instead of 500 Internal Server Error errors.
Fixed
- Partial hostname resolution match in HTTP server could lead to incorrect routing.
- Redirects configured with
statusdirective didn't have some placeholder locations (such as$1) replaced when using a regex match. - Redirects configured with
statusdirective didn't lead to any destination. - Reverse proxy was sometimes routed to wrong backend server.
- Some default cache paths were unwritable in some cases.
- Unknown directives in global blocks for
statusdirective (even though they're known in host blocks) caused the web server to fail to start. - When using OTLP, access logs were emitted with "access_log" body, not actual access logs.
- Path traversal when URL sanitizer disabled and path canonicalization failed
- Proxy header leak in CGI/FastCGI/SCGI (httpoxy)
- DNSimple DNS provider support
- IP-based TLS certificate support
- JSON-format access logs
- Rego-based subconditions deprecated and will be removed in future release
- Dynamic SRV-based backend discovery
- File size-based log rotation
- Reusable KDL configuration snippets
- Fixed high CPU usage after configuration reloads caused by the OCSP stapler.
- Fixed graceful shutdowns when reloading the server configuration.
- Logging to standard I/O
- TLS certificate and key persistence
- Forwarded HTTP header support
- Fixed a rarely occurring crash when upgrading backend server's HTTP connection as a reverse proxy.
- Bunny.net, DigitalOcean, OVH DNS providers
- HTTP Basic authentication for forward proxying
- The server now gracefully handles canceled I/O operations that could previously cause 502 Bad Gateway errors (when io_uring is disabled). - The server now gracefully handles canceled I/O operations that could previously cause a crash under rare conditions (when io_uring is enab
- The server now gracefully handles canceled I/O operations that could previously cause a crash under rare conditions (when io_uring is disabled).
- Removed configuration directive for maximum idle kept-alive connection pool in reverse proxy
- Fixed XSS in server administrator email configuration
- Fixed ACME EAB Base64 HMAC parsing
- Reverse proxy connection metrics
- URL sanitizer disable option
- TCP concurrency limits