#文件服务器 #http文件 #静态文件 #本地 #文档 #分支

app petushki

一个简单的静态HTTP文件服务器,由basic-http-server分支而来

2个不稳定版本

0.10.0 2021年1月5日
0.9.0 2020年11月6日

#1309 in HTTP服务器

MIT/Apache

32KB
599

petushki

本项目是从 https://github.com/brson/basic-http-server 分支而来的

basic-http-server

一个简单的静态HTTP服务器,用于学习和本地开发。

basic-http-server 设计了两个目的

  • 作为教学工具. 它是一个简单且注释良好的基本 tokio, hyper 和异步Rust编程的示例,使用 async / await

  • 用于本地开发. 它提供静态HTML内容,并且通过 -x 标志,提供方便的功能,用于创建开发者文档,包括Markdown渲染和目录列表。

整个设置 hyper HTTP服务器的参考源代码包含在 main.rs 中。 ext.rs 文件包含开发者扩展。

开发者扩展

当传递 -x 标志时,basic-http-server 启用一些额外的便利功能,这些功能对本地开发文档很有用。这些扩展包括

  • 将扩展名为 ".md" 的文件渲染为Markdown。

  • 当找不到 "index.html" 文件时列出目录。

  • 将常见的源代码文件作为 "text/plain" 提供,以便在浏览器中渲染。

这使得 basic-http-server 适用于以下场景

  • 预览Markdown内容。在推送至GitHub之前,在本地预览您的 README.md 修改。

  • 导航到本地文档,包括Rust API文档。只需在您的项目目录中运行basic-http-server -x,然后使用目录列表导航到target/doc,然后在其中找到要读取的crate(cargo doc不会在target/doc中放置index.html文件)。

安装和使用

请注意,basic-http-server不是生产就绪的,不应暴露在互联网上。它是一个学习和开发工具。

使用cargo install进行安装

$ cargo install basic-http-server
$ basic-http-server

要启用开发者扩展,请传递-x

$ basic-http-server -x

要增加日志详细程度,请使用RUST_LOG

RUST_LOG=basic_http_server=trace basic-http-server -x

命令行参数

USAGE:
        basic-http-server [FLAGS] [OPTIONS] [ARGS]

FLAGS:
    -x               Enable developer extensions
    -h, --help       Prints help information
    -V, --version    Prints version information

OPTIONS:
    -a, --addr <ADDR>    Sets the IP:PORT combination (default "127.0.0.1:4000")

ARGS:
    ROOT    Sets the root directory (default ".")

许可证

MIT/Apache-2.0

依赖项

~15–26MB
~392K SLoC