1 个不稳定版本
0.6.10 |
|
---|---|
0.6.9 | 2024年5月2日 |
#828 在 HTTP服务器
235KB
1.5K SLoC
它看起来像什么?
屏幕截图

命令行参数
Simple HTTP(s) Server 0.6.3
USAGE:
simple-http-server [FLAGS] [OPTIONS] [--] [root]
FLAGS:
--coep Add "Cross-Origin-Embedder-Policy" HTTP header and set it to "require-corp"
--coop Add "Cross-Origin-Opener-Policy" HTTP header and set it to "same-origin"
--cors Enable CORS via the "Access-Control-Allow-Origin" header
-h, --help Prints help information
-i, --index Enable automatic render index page [index.html, index.htm]
--nocache Disable http cache
--norange Disable header::Range support (partial request)
--nosort Disable directory entries sort (by: name, modified, size)
-s, --silent Disable all outputs
-u, --upload Enable upload files (multiple select) (CSRF token required)
-V, --version Prints version information
OPTIONS:
-a, --auth <auth> HTTP Basic Auth (username:password)
--cert <cert> TLS/SSL certificate (pkcs#12 format)
--certpass <certpass> TLS/SSL certificate password
-c, --compress <compress>...
Enable file compression: gzip/deflate
Example: -c=js,d.ts
Note: disabled on partial request!
--ip <ip> IP address to bind [default: 0.0.0.0]
-p, --port <port> Port number [default: 8000]
--redirect <redirect> takes a URL to redirect to using HTTP 301 Moved Permanently
-t, --threads <threads> How many worker threads [default: 3]
--try-file <PATH>
serve this file (server root relative) in place of missing files (useful for single page apps) [aliases:
try-file-404]
-l, --upload-size-limit <upload_size_limit> Upload file size limit [bytes] [default: 8000000]
安装
下载二进制文件
- windows-64位
- osx-64位
- linux-64位
使用cargo安装
# Install Rust
curl https://sh.rustup.rs -sSf | sh
# Install simple-http-server
cargo install simple-http-server
rehash
simple-http-server -h
特性
- Windows支持(带彩色日志)
- 指定监听地址(ip,端口)
- 指定运行线程数
- 指定根目录
- 漂亮的日志
- Nginx风格的目录视图(目录条目,链接,文件大小,修改日期)
- 面包屑导航
- (默认启用)猜测MIME类型
- (默认启用)HTTP缓存控制
- 发送Last-Modified / ETag
- 对If-Modified-Since回复304
- (默认启用)部分请求
- Accept-Ranges: bytes([ByteRangeSpec; length=1])
- [Range, If-Range, If-Match] => [Content-Range, 206, 416]
- (默认禁用)自动渲染索引页面 [index.html, index.htm]
- (默认禁用)上传文件
- 启用上传时将生成CSRF令牌,上传文件时必须作为参数发送
- (默认禁用)HTTP基本认证(用户名:密码)
- 排序方式:文件名,文件大小,修改日期
- HTTPS支持
- 内容编码:gzip/deflate
- 添加CORS头支持
- 静默模式
依赖项
~8–22MB
~360K SLoC