2个不稳定版本
使用旧版Rust 2015
0.2.0 | 2018年4月16日 |
---|---|
0.1.0 | 2017年10月18日 |
#1290 in HTTP服务器
22KB
456 行
Swerve
快速且简单的多线程本地文件服务器,适用于本地开发
关于
关于Swerve的一个常见误解是,它的名字是“serve”(文件服务器的作用)的谐音。与这种说法相反,Swerve实际上代表“Simple Werve”(简单Werve),目标是在文件系统的任何位置轻松传输文件。
虽然Swerve没有进行创新,但其目标是拥有一个快速性能的文件服务器,具有最少的设置和拆卸时间,以及服务器内部最小的请求时间。当前功能仅限于提供文件,但路线图包括API模拟,以使前端开发更加容易。
安装
预构建
- 从发行版页面下载您操作系统上的二进制文件
- 将
swerve
放在您的$PATH
中某个位置,或者修改您的$PATH
以包含swerve
所在的文件夹 - 做两件事之一
- 打开命令提示符并
cd
到包含您的文件的文件夹,然后运行swerve
cd "$HOME/projects/my_awesome_site" swerve
- 打开命令提示符并运行
swerve
,指定目标目录swerve -d "$HOME/projects/my_awesome_site"
- 打开命令提示符并
从源代码
要从源代码构建和安装Swerve,您需要 rustc 1.22.0-nightly
或更高版本以及Cargo包管理器
- 在命令提示符中,运行
cargo install swerve
这将在本机创建swerve的副本,以防您的平台没有编译的二进制文件。有点平淡无奇,但相当简单。
用法
您可以通过运行 swerve -h
或 swerve --help
在任何时候打印出用法文本。当前支持以下选项:
选项 | 参数 | 描述 | 注意 |
---|---|---|---|
-h , --help |
打印帮助文本 | ||
-d , --dir |
路径; 字符串 |
将目标目录用作服务文件的根目录 | 文件路径被限制在根目录内,无法逃离根目录。默认为运行swerve 命令的目录 |
-p , --port |
端口号; 无符号整数 |
在指定的端口上运行服务器 | 默认为 8200 |
-a , --address |
地址; 字符串 |
将服务器绑定到此网络地址,允许远程连接 | 默认为 localhost ,防止远程连接 |
-t , --threads |
线程数; 无符号整数 |
在线程池中创建指定数量的线程,用于并发服务文件 | 默认为 32 。在低端机器上,通过减少工作线程的数量可能提高性能 |
-q , --quiet |
不要打印任何内容到stdout | 如果您从另一个进程启动swerve并需要监控stdout,则很有用 | |
--no-index |
不要尝试从目录路径中服务index.html 文件 |
默认情况下,swerve会将目录视为请求index.html 文件的请求。例如,/foo/bar 被视为/foo/bar/index.html |
依赖关系
~21–31MB
~579K SLoC