Migrating from v1 to v2¶
The v2
introduces notable changes including new features, performance improvements and new target support like ARM64 and OSes like FreeBSD.
This version v2
was re-written almost from scratch on top of Hyper and Tokio runtime which gives us the Rust asynchronous ability by default and the latest HTTP/1 - HTTP/2 implementation improvements. However, it still tries to keep the same principles of its v1
: lightness and easy-to-use. Therefore migration should not be a big deal.
v2 breaking changes¶
This major v2
has few breaking changes. However, migration should not represent a problem.
Tip
It is always worth recommending that you test a major server version upgrade like this first with your application(s) in a development environment or similar.
Please have in mind the following changes in v2
:
- The server now supports only a root directory path (via
--root
or its equivalent env) so an assets path option is no longer required. - Cache-control headers are arbitrarily applied to assets. See control headers examples for more details.
- OpenSSL TLS for HTTP/1 is no longer supported, instead for the HTTP/2 & TLS (via
--http2
option) the server uses h2 which is on top of Rustls. It means that instead of using a.p12
or.pfx
file you can now use only a certificate file along with its private key. See HTTP/2 & TLS examples for more details.
The rest of the known options are equivalent to v1
(except the new ones of course).