Star 历史趋势
数据来源: GitHub API · 生成自 Stargazers.cn
README.md

zeroserve

Zero-config, fast io_uring-based HTTPS server.

zeroserve serves a website packaged as a tarball, and handles hot-reload via SIGHUP.

Features

  • Built-in TLS support
  • All network and disk I/O use io_uring
  • Clean - does not leave any temporary files on disk. Tarballs are indexed during loading (path -> byte-range), and served via byte-range reads on the tarball directly.
  • Support for low-latency eBPF request processing middleware

Dependencies

  • monoio: the io_uring runtime
  • clap: Argument parser (use derive macro)
  • monoio-rustls: TLS server
  • tar: Tarball handling

Usage

# Serve HTTP on port 8080 zeroserve --addr 0.0.0.0:8080 site.tar # Serve HTTP on port 8080, and HTTPS on port 8443 zeroserve --addr 0.0.0.0:8080 --tls-addr 0.0.0.0:8443 --cert certificate.pem --key key.pem site.tar # Serve HTTPS with SNI certificate selection from a certificate directory zeroserve --addr 0.0.0.0:8080 --tls-addr 0.0.0.0:8443 --cert-dir /etc/zeroserve/certs site.tar # Fall back to <path>.html when a request path is missing zeroserve --addr 0.0.0.0:8080 --try-html site.tar # Honor PROXY protocol v1 headers (e.g. when behind a TCP load balancer) zeroserve --enable-proxy-protocol site.tar # Hot-reload certificate and site tarball killall -SIGHUP zeroserve

Testing

End-to-end tests live in testing/ and are written in TypeScript for Deno.

# Run all e2e tests cd testing deno test -A --parallel

The scripting tests require clang and llc to be available on PATH; they are skipped if the toolchain is missing.

关于 About

Zero-config, fast `io_uring`-based HTTPS server.

语言 Languages

Rust55.7%
TypeScript39.8%
C2.7%
Python1.7%
Dockerfile0.1%
Shell0.0%

提交活跃度 Commit Activity

代码提交热力图
过去 52 周的开发活跃度
38
Total Commits
峰值: 9次/周
Less
More

核心贡献者 Contributors