A cross-platform, high-performance and asynchronous web server for static files-serving. ⚡
APACHE-2.0 License
Bot releases are visible (Hide)
Published by joseluisq over 3 years ago
Third beta release v2.0.0-beta.3
with notable changes.
Updates
v1
, Warp v0.3
(with Hyper v0.14
) and related crates (also e9384e9548362d0bbdf6932bb62e7ff0ec33089b, 5d4421da61e4ff547dc7409174c62918884ac977)Refactorings
Fixes
ring
crate during Darwin build.Docs
Published by joseluisq over 3 years ago
Features
Updates
1.1.1k
which fixes CVE-2021-3450
. More details on https://www.openssl.org/news/secadv/20210325.txt
Docs
Published by joseluisq over 3 years ago
Features
-i, --directory-listing
boolean flag (equivalent SERVER_DIRECTORY_LISTING
env variable) which is disabled by default. PR #32 resolves #31.Refactorings
Option
type used for certain server arguments.Updates
Codebase
Docs
Published by joseluisq over 3 years ago
Second beta release v2.0.0-beta.2
with notable changes.
Updates
v1
, Warp v0.3
(with Hyper v0.14
) and related crates. (also a4421c62a07f24e69a7029c67f8d667ffd2290a5, 960a681575fa687ca88db0359922df66e5f0b7bd, 960a681575fa687ca88db0359922df66e5f0b7bd)Features
--threads-multiplier
which provides the ability to customize number of worker threads.More details about features on README file.
Refactorings
'static
lifetime on constants.macros
feature.Clippy
.Codebase
Docs
Published by joseluisq over 3 years ago
First major beta release v2.0.0-beta.1
with notable changes.
It uses Tokio v0.2
and Warp v0.2
(Hyper v0.13
).
PR #28
Accept-Encoding
headerPublished by joseluisq over 3 years ago
Updates
Features
Refactorings
&[]
instead of Vec
ptr as arg type for on_server_running
function.Codebase
Published by joseluisq almost 4 years ago
Updates
Bug fixes
Features
Darwin
Binary sizes
v1.12.0
.v1.11.0
) to 1.6M (current version v1.12.0
)Codebase
Published by joseluisq about 4 years ago
Updates
Improvements
SERVER_VERSION
(server release version) env on every Docker image (also ee47f76bad9e947509ae23b0376ec5f2c6caa53c, 74040cfab7a60eb9c1ca0652f316dcb3316f4d15).Binary sizes
v1.10.0
) to 4.8M (current version v1.11.0
)v1.10.0
) to 1.7M (current version v1.11.0
)Codebase
Published by joseluisq over 4 years ago
Updates
Improvements
jemalloc
as global allocator on Linux Musl 64-bit systems. Which increases the web server performance (also 0fda53f404337d5b6da91fb1ff361e95a44faeb1). See more details on PR #22.Linux binary size
Static binary size was increased (0.2M). From 4.1M (v1.9.2
) to 4.3M (current version v1.10.0
)
Codebase
Published by joseluisq over 4 years ago
Bugfixes
text/plain
instead of text/html
for 404/50x error pages.Published by joseluisq over 4 years ago
Updates
Improvements
iron-staticfile-middleware
to v0.4.2 which increases slightly performance on every check of text-based mime types array.Refactors
const
for the default content type on Error Page middeware.to_string
conversion on server address.latest
of release tag target.Published by joseluisq over 4 years ago
Features
v1.1.1g
. More details on rust-linux-darwin-builder release.--cors-allow-origins
option and its equivalent env. Resolves #18.Linux binary size
Static binary size was increased (0.1M). From 4.0M (v1.8.0
) to 4.1M (current version v1.9.0
)
Documentation
Codebase
Published by joseluisq over 4 years ago
Overview
This minor release v1.8.0
introduces the following:
assets
directory path configurable and independent (no more relative to the root
). This contains a "breaking change". (Please see below).assets
directory route is always the directory name. That means if you have /public/my-assets
then the route will be /my-assets
.error
log level by default. (More details below).root
and assets
directory paths checking before to start the server.Please view the details involved about this minor release.
Features
--log-level
option or its equivalent env. Now error
log level is enabled by default. Use info
level if you want requests details. Check out the documentation for more options.iron_staticfile_middleware
to v0.3.0
.Breaking change
This minor release contains one "breaking change" due to the feature "configurable assets directory" (2f7d042).
1. Configurable assets directory
This feature makes assets
directory (--assets
option and its equivalent SERVER_ASSETS
env) configurable and independent.
It means that assets
directory is no more restricted to be relative to root
directory. So absolute paths
work now.
1.1. Caveat and solution for relative assets directory
If you are using an assets
directory path relative to root
(v1.7.0
or early). For example if you have a root ./my-root
and assets ./my-assets
directories. Just adjust your assets
directory path to ./my-root/my-assets
or use another absolute path if you want.
This is necessary because from now, the assets
directory is treated as an independent path. So an absolute path is recomendable for both directories (root and assets).
Otherwise, if you are using the default values provided by the server, you don't need to modify anything. Unless you had specified them yourself. If so, please proceed as explained above.
Refactorings
Documentation
New options and modifications details were updated, please take a look the documentation on README file.
Codebase
Published by joseluisq over 4 years ago
Features
Linux binary size
Static binary size was increased (0.1M). From 3.9M (v1.6.0
) to 4.0M (current version v1.7.0
)
Codebase
Published by joseluisq over 4 years ago
Features
v3.11
.docker run
execution or via the command
option in a docker-compose
file. Example: docker run --rm static-web-server:alpine --help
. Flag arguments (with dashes) will be passed to static-web-server
, otherwise they will be treated as shell commands. Example of an interactive run: docker run --rm -it static-web-server:alpine sh
.Linux binary size
Static binary size was reduced (0.3M). From 4.2M (v1.5.0
) to 3.9M (current version v1.6.0
)
Codebase
openssl
as dev-dependency vendored.rust-linux-darwin-builder
(also 38808fb493535d3fa25610503560f4264ff931b8).Published by joseluisq over 4 years ago
Features
accept-encoding
header (PR #12 resolves #10).head
request method feature.Published by joseluisq almost 5 years ago
Features
--tls
, --tls-pkcs12
and --tls-pkcs12-passwd
as well as their corresponding environment variables.2,3MB
) from 1.8MB
to 4.1MB
.Misc
Published by joseluisq almost 5 years ago
Features
x86_64-apple-darwin
thanks to Rust Linux / Darwin Builder. Resolves issue #8.Misc
Published by joseluisq almost 5 years ago
Features
Refactors
Misc
Published by joseluisq almost 5 years ago
Features
0.4MB
) from 1.4MB
to 1.8MB
.Breaking changes
Due error HTML pages feature #5 now the server requires two settings for display 404 and 50x errors.
For example if you use environment variables try to append following variables with the two paths of your HTML pages:
# HTML file path for 404 errors
SERVER_ERROR_PAGE_404=./public/404.html
# HTML file path for 50x errors
SERVER_ERROR_PAGE_50X=./public/50x.html
Or via CLI options:
--page404 <page404> HTML file path for 404 errors [env: SERVER_ERROR_PAGE_404=] [default: ./public/404.html]
--page50x <page50x> HTML file path for 50x errors [env: SERVER_ERROR_PAGE_50X=] [default: ./public/50x.html]
Refactors
env.rs
to config.rs
.