局域网共享工具CuteHttpFileServer/chfs

简介

CuteHttpFileServer/chfs是一个免费的、HTTP协议的文件共享服务器,使用浏览器可以快速访问。它具有以下特点:

  • 单个文件,核心功能无需其他文件
  • 跨平台运行,支持主流平台:Windows,Linux和Mac
  • 界面简洁,简单易用
  • 支持扫码下载和手机端访问,手机与电脑之间共享文件非常方便
  • 支持账户权限控制和地址过滤
  • 支持快速分享文字片段
  • 支持webdav协议

与其他常用文件共享方式(如FTP,飞秋,网盘,自己建站)相比,具有使用简单,适用场景更多的优点,在个人使用以及共享给他人的场景中非常方便快捷。

下载

命令行程序

GUI程序

GUI程序

基本用法

非系统服务运行

该程序是一个控制台程序,可直接双击运行,或在控制台/命令行中运行。可通过命令行参数进行相关配置,如使用'chfs --help'来查看帮助:

usage: chfs.exe \[\]

Flags:
  \-\-help              Show context\-sensitive help (also try \-\-help\-long and
                      \-\-help\-man).
  \-\-path=DIRECTORIES  Directories where store shared files, separated by '|'.
  \-\-port=PORT         HTTP listening port(Default is 80).
  \-\-allow=LIST        Allowed IPv4 addresses(Allow any address by default).

                      White list mode: "listitem1\[,listitem2,...\]" e.g.
                      "192.168.1.2\-192.168.1.10,192.169.1.222" allows this 10
                      addresses.

                      Black list mode: "not(listitem1\[,listitem2,...\])" e.g.
                      "not(192.168.1.2\-192.168.1.10,192.169.1.222)" bans this 10
                      addresses!
  \-\-rule=LIST         Access rules(anybody can access any thing by default).

                      List defines like:"USER:PWD:MASK\[:DIR:MASK...\]\[|...\]":

                        1,USER and PWD is account name and password
                        2,MASK:''=NO present,'r'=read,'w'=write,'d'=delete
                        3,r=view+download,w=r+upload+create+rename,d=w+delete
                        4,DIR is directory name, allows wildcard('\*' & '?')
                        5,The 3rd field is access mask of shared root directory
                        6,The optional fields is pairs of sub\-directory and mask
                        7,The optional sub\-directory's mask overwrite parent's
                        8,You should avoid '|' ':' and white space(exclude DIR)

                      For instance: "::|root:123456:rw" bans guest, and defines
                      a account 'root' can do anything
  \-\-log=DIRECTORY     Log directory. Empty value will disable log.
  \-\-file=FILE         A configuration file which overwrites & enhence the
                      settings.
  \-\-version           Show application version.

Tips 1:在Windows系统中,可以使用右键弹出菜单快捷地共享某个目录。步骤如下:

1, 下载注册表模板文件
2, 在该文件中编辑你的chfs.exe的真实路径,并可添加其他参数
3, 双击该脚本文件,进行注册表添加

Tips 2:另外,有几个功能需要通过配置文件中进行配置,其中主要的配置项有:

1, html.title: 自定义网页标题
2, html.notice: 自定义网页顶部的公告板。可以是文字,也可以是HTML标签,此时,需要适用一对``(反单引号,通过键盘左上角的ESC键下面的那个键输出)来包住所有HTML标签
3, ssl.cert和ssl.key: 用来配置SSL,启用HTTPS
4, folder.leaf.download: 仅最后一个目录可以打包下载
5, session.timeout: 会话的时长,单位是分钟

以系统服务运行

本程序不是一个服务程序,所以如果你要以系统服务运行,需要自己创建服务。下面给出Windows平台的创建服务方法(通过NSSM工具):

1, 将chfs.exe放在指定目录,假设为:d:\program\cutehttpfileserver
2, 到http://www.nssm.cc/download下载nssm
3, 将解压后的nssm程序放在d:\program\cutehttpfileserver中
4, 在d:\program\cutehttpfileserver中运行命令行,或运行命令行并CD至该目录
5, 假设你的服务名称为cute_http_file_service,命令行中输入:nssm install cute_http_file_service
6, NSSM会弹出配置对话框,在该对话框中输入程序路径以及运行参数
7, 启动服务,命令行中输入:nssm start cute_http_file_service

高级用法

如何启用HTTPS?

配置文件中有ssl.cert和ssl.key两个键值,设置好对应的文件目录即可。另外,chfs支持的最低SSL版本为SSLv3,不兼容SSL2的握手。对了,别忘了将监听端口设置为443

我想自己搞一套页面,请问开发文档在哪里?

运行chfs后,通过地址:http://host:port/asset/api.html访问API文档。

如何启用webdav?

程序默认支持webdav,跟http共用同一套访问规则。其地址为:http://host:port/webdav

测试说明

运行主机

  • Windows XP:
  • Windows 10:
  • Debian 9:
  • CentOS 7:
  • 其他:未测试

PC浏览器

  • IE:11+ √
  • Edge:
  • Firefox:
  • Chrome:
  • Opera:
  • Safari:
  • 其他:未测试

作者主页http://iscute.cn/chfs

本文链接:

https://www.nni5.com/index.php/archives/chfs.html
1 + 7 =
快来做第一个评论的人吧~