7个版本
0.5.0 | 2024年5月6日 |
---|---|
0.4.4 | 2023年10月6日 |
0.4.3 | 2023年5月13日 |
0.4.2 | 2023年4月17日 |
0.3.3 | 2021年9月3日 |
#47 in HTTP服务器
404 每月下载量
310KB
8K SLoC
用Rust编写的Web服务器。基于快速Hyper。
使用方法
安装
安装cargo 然后执行: cargo install flash_rust_ws
(稳定版) cargo install --git https://github.com/User65k/flash_rust_ws.git
(最新版本)
运行
创建一个配置文件并执行二进制文件 ☺️
查看Wiki以获取有关配置文件的帮助。
最小示例
["example.com"]
ip = "127.0.0.1:80"
dir = "/var/www/"
Let's Encrypt示例
["example.com"]
ip = "[::]:443"
validate_server_name = true
dir = "/var/www/"
tls.host.ACME = {uri="https://acme-staging-v02.api.letsencrypt.org/directory",cache_dir=".",contact=["mailto:[email protected]"]}
目标
- 易于配置和安全的默认值
- 轻量级
- 速度
功能
- 虚拟主机
- "挂载点"用于服务文件
- FastCGI
- HTTPS
- 每个vHost / SNI的证书
- 每个密钥类型(EC、ED、RSA)的证书
- ACME-TLS
- HTTP2
- WebDAV
- 反向代理
- Websocket
- 可自定义的日志记录
- 到journald
- 到Windows事件日志?
- 安全
- HTTP用户认证:摘要 - (由于Firefox而使用MD5,但总比没有好)
- Systemd套接字激活
- DoS保护
- 不受Sloloris的影响
- 限制连接数?
- 速率?
- 最小速度?
- 没有默认文件
- 没有用户的情况下没有DAV?
- 没有文件夹列表(除了DAV)
- 默认推荐http头
- 没有路径遍历 :-)
- 仅使用基于允许值的过滤器
- 仅https?
- 避免BEAST和CRIME
- 仅当被指示时才跟随符号链接
- SCGI
依赖关系
~13–25MB
~383K SLoC