We are excited to introduce Ferron 2.5.0, with new features, improvements and fixes.
Key improvements and fixes
CLI improvements
Added support for specifying configuration in command-line arguments, which can be useful for quick testing and development.
Also added the ferron serve subcommand, which allows you to serve files on the local filesystem without needing to write a configuration file.
Both of these features are thanks to @amejia1, who opened a pull request with these improvements.
Saving automatic TLS certificates to disk
After someone asked about sharing automatic TLS certificates with a mail server on Threads, we have added support for saving TLS certificates and private keys (when using automatic TLS functionality) into disk and executing commands afterwards.
This can be useful for sharing TLS certificates obtained by Ferron with other servers, for example mail servers, that don’t support automatic TLS functionality, but do support using TLS certificates from disk.
User experience improvements
The server now differentiates between file types in directory listings, which can improve user experience when browsing directories.
Also, the default placeholder page design has been refreshed (after refreshing our website), and now has a more modern and “premium” look. The new design will have effect for new Ferron installations.
Standard I/O logging
Added support for logging to standard output and standard error, which can be useful for running Ferron in environments where file-based logging is not ideal, such as containers.
Optimized configuration and SNI lookup performance
Ferron 2.5.0 also includes optimizations for configuration and SNI lookup performance, which can improve the performance of the server, especially for configurations with many virtual hosts.
localhost SNI resolution fix
Fixed an issue where SNI resolution for localhost would not work correctly, which could cause issues when using HTTPS with localhost as the domain name.
Configuration reloading resource usage fixes
The server now reuses threads when reloading the configuration, if possible, and also shuts down multiple threads at once. This can reduce resource usage when reloading the configuration.
Support for sending Forwarded header to backend servers
Added support for sending standardized Forwarded HTTP header (alongside de facto standard X-Forwarded-* HTTP headers) to backend servers as a reverse proxy, which can be useful for providing more information about the original client request to backend servers.
Thank you!
We appreciate all the feedback and contributions from our community. Your support helps us improve Ferron with each release. Thank you for being a part of this journey!
The Ferron Team