3 unstable releases

0.3.1 Jul 3, 2025
0.3.0 Jul 2, 2025
0.2.0 Jan 5, 2024

#416 in HTTP server

Download history 1/week @ 2025-05-07 284/week @ 2025-07-02

284 downloads per month

Apache-2.0

97KB
2.5K SLoC

What is ?

Vacuna is a simple http[s] server for static files written in rust, with a simple configuration file in KDL language, it's built where is possible using existing rust framework/libs, it uses actix-web for the server part with rustls for the ssl support, the configuration is handled with knuffel.

Getting started

Auto Configuration

A simple automatic configuration with acme-redirect managed certificates:

server {
   listen "[::]:443" {
        ssl {
            acme-redirect "/var/lib/acme-redirect/live/"
        }
   } 
   auto "/var/www/"
}

This configuration will list all the folders in the /var/www and using the name of the folder as domain name and expose them as sites, will also look for the certificates in the /var/lib/acme-redirect/live/ sub folders and use them for ssl connections

Whole configuration

For the whole configuration check the whole-conf.kdl in the root of the repository

Install

Deb

The repo already support to build a deb package, that included the whole configuration and a systemd unit, to build it just run

cargo deb

Why ?

I just wanted a simple and modern static file server without the complexity of existing http servers ( that handle a big set of operation/modules/plugins/cgis/scripts ....) this server is born with the target of serving static sites, only static sites!!

What is the complexity?

This project aim to keep the complexity really low, try to use most of existing libs, and contributing back to existing libs when needed and make sense.

Where the name come from?

Vacuna is a ancient goddess of rest or job done read more of it on wikipedia

Dependencies

~41–56MB
~1M SLoC