Skip to main content

A modern HTTP file server with web UI

Project description

ServeFS

English

一个基于 FastAPI 和 Vue.js 的简单文件服务器,支持文件和文件夹的上传、预览和管理。

screenshot

更多截图查看 GALLERY

功能特点

  • 📁 文件和文件夹浏览
  • 📤 支持文件和文件夹上传
  • 🖼️ 图片文件预览
  • 🗑️ 文件和文件夹删除
  • 📊 文件大小显示
  • 🔄 实时进度显示
  • 💫 拖放上传支持
  • 🖥️ 命令行界面支持

预览功能

  • .jpg、.jpeg、.png、.gif、.webp 图片预览。
  • .json、.html、.css、.txt、.md、.py 以文本格式预览。
  • .ttf 字体文件预览。

安装

推荐使用 pipx 安装(保证依赖隔离):

pipx install servefs

或使用 pip:

pip install servefs

使用

命令行

# 在当前目录启动服务器
servefs

# 指定目录
servefs --directory /path/to/directory
# or
servefs -d /path/to/directory

# 指定端口
servefs --port 7001
# or
servefs -p 7001

# 显示帮助
servefs --help

完整命令行选项:

选项:
  -d, --directory TEXT     要服务的根目录 [default: .]
  -h, --host TEXT     绑定的主机地址 [default: 0.0.0.0]
  -p, --port INTEGER  绑定的端口号 [default: 8000]
  -b, --basic-auth TEXT  启用基本认证,格式为 username:password
  -v, --version       显示版本号并退出
  --help             显示帮助信息并退出

基本认证

你可以使用基本认证来限制文件的访问权限:

# 设置用户名和密码
servefs --basic-auth admin:password123

# 或使用短选项
servefs -b admin:password123

启用基本认证后:

  • 未认证用户只能查看和下载文件
  • 认证用户可以执行所有操作(上传、删除、重命名等)
  • 认证信息会通过浏览器的基本认证机制传输

你也可以通过环境变量设置认证信息:

export SERVEFS_BASIC_AUTH=admin:password123
servefs

开发

如果你想参与开发,请查看 开发指南

TODO

  • 支持文件重命名
  • 支持链接复制
  • 添加用户认证
  • 支持文件搜索
  • 支持文件分享

相关项目

感谢

  • Windsurf

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

servefs-0.2.5.tar.gz (1.1 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

servefs-0.2.5-py3-none-any.whl (1.1 MB view details)

Uploaded Python 3

File details

Details for the file servefs-0.2.5.tar.gz.

File metadata

  • Download URL: servefs-0.2.5.tar.gz
  • Upload date:
  • Size: 1.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for servefs-0.2.5.tar.gz
Algorithm Hash digest
SHA256 a6b331f4a8a937d3b826d72467d2669f649dae71737f06f97dd88bba769253d0
MD5 c1191ca384e7e52d7c142a1e49cf0c8e
BLAKE2b-256 12ed592a3847e1c2648ed6b3b64cf96624dd49f475c15ccaf85754166c91c62c

See more details on using hashes here.

File details

Details for the file servefs-0.2.5-py3-none-any.whl.

File metadata

  • Download URL: servefs-0.2.5-py3-none-any.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for servefs-0.2.5-py3-none-any.whl
Algorithm Hash digest
SHA256 778ad7aae4a42c0fa42b98391597acc9dd5484840b36415cf685b0630d4e7df0
MD5 2f31354fa1de6b3de64f818ad0d71639
BLAKE2b-256 f7a87c022585bc15bec4e11b8d7177f9f7e01a64c01cd28b469ca63ff1d5e591

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page