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.0.tar.gz (121.0 kB 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.0-py3-none-any.whl (121.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: servefs-0.2.0.tar.gz
  • Upload date:
  • Size: 121.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.4

File hashes

Hashes for servefs-0.2.0.tar.gz
Algorithm Hash digest
SHA256 f1181b80b242a065a2b6f0d4fbd5b3e91a75022a7ee9ec2762a79aa4f5cb014e
MD5 6be870300adf4ecb361baa1c65419743
BLAKE2b-256 0f381723e99d7f54b99ab1af743fee09f4eecce5e58d9c13d763288784600258

See more details on using hashes here.

File details

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

File metadata

  • Download URL: servefs-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 121.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.4

File hashes

Hashes for servefs-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ddb0303b2236f8e9c8c2b2263e6be0383d86c5b47b629afad02e60f323434e98
MD5 32a1e3a120936524e3663850b6be088c
BLAKE2b-256 c32b17bc16ea640d438c8351f58c99ea779019c33fcfac7e69c85c25ebc439ae

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