28个版本

0.6.8 2024年1月14日
0.6.7 2023年4月24日
0.6.6 2023年1月30日
0.6.5 2022年12月3日
0.4.3 2017年7月10日

HTTP服务器 中排名第87

Download history 188/week @ 2024-03-13 83/week @ 2024-03-20 71/week @ 2024-03-27 71/week @ 2024-04-03 47/week @ 2024-04-10 56/week @ 2024-04-17 68/week @ 2024-04-24 52/week @ 2024-05-01 45/week @ 2024-05-08 60/week @ 2024-05-15 76/week @ 2024-05-22 83/week @ 2024-05-29 80/week @ 2024-06-05 60/week @ 2024-06-12 44/week @ 2024-06-19 42/week @ 2024-06-26

每月下载244

MIT许可

240KB
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
~353K SLoC