filebox

command module
v0.0.0-...-16ff62d Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 17, 2023 License: MIT Imports: 2 Imported by: 0

README

文件盒子

文件列表程序 内置 WebDAV 服务器

截图

功能

  • 文件列表 Web UI
  • 内建 Basic Auth 保护的 WebDAV 读写支持
  • 安全链接,防止盗链资源刷爆流量
  • 自动渲染 README.md
  • 可自定义 网站标题
  • 可自定义 Favicon

构建

构建需要 Golang 1.18 以上环境,已安装 make 命令。最小构建需要安装 UPX。

标准构建方式:make 构建产物约为 6MB

最小构建方式:make mini 构建产物约为 2.5MB

命令行参数

--listen
指定服务监听的地址,默认为 localhost:9496 端口
--dir
指定服务的文件目录,默认为当前目录
--title
指定网站标题,默认为"文件盒子"
--username
指定 WebDAV 用户名,默认为"admin"
--password
指定 WebDAV 密码,默认为"admin"
--cors
指定 CORS 跨域允许访问地址,默认不开启

高级特性

文件隐藏

同 Linux 系统传统一致,不在列表中展示 . 开头的目录或文件。 如果通过地址直接输入访问,需要输入正确的WebDAV的用户名密码。

安全链接

为了防止文件链接被某些下载工具缓存并持续盗链消耗服务器流量,添加了简单的签名服务,链接过期时间为 5 分钟(300 秒)。 如需修改,请编辑 service.SecureLinkExpireSecond 常量后再构建。

WebDAV

内建 WebDAV 支持,WebDAV 具有对目录的读写能力,请谨慎使用。 由于 Basic Auth 的密码会明文传送,建议通过 Caddy / Nginx 等支持 HTTPS 的服务器进行反代。

当用户名密码都设置为空时,WebDAV 将不验证任何身份,为了安全应该仅在可信环境内关闭用户名密码。

当需要通过网页跨域访问时,可以设置 --cors 参数指定响应头 Access-Control-Allow-Origin 的内容。

README.md

目录页会尝试渲染发现的README.md文件,并对其中的链接和图片地址进行签名,使用方无需考虑安全链接问题。

个性化

通过命令行参数 --title 可以指定网站的标题,仅在首页生效。

通过在目录中安放 favicon.ico 文件可以变更网站的图标。

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL