CuteHttpFileServer/chfs
简介
CuteHttpFileServer/chfs是一个免费的、HTTP协议的文件共享服务器,使用浏览器可以快速访问。它具有以下特点:
单个文件,核心功能无需其他文件
跨平台运行,支持主流平台:Windows,Linux和Mac
界面简洁,简单易用
支持扫码下载和手机端访问,手机与电脑之间共享文件非常方便
支持账户权限控制和地址过滤
支持快速分享文字片段
支持webdav协议
与其他常用文件共享方式(如FTP,飞秋,网盘,自己建站)相比,具有使用简单,适用场景更多的优点,在个人使用以及共享给他人的场景中非常方便快捷。
下载
百度网盘分流下载:https://pan.baidu.com/s/1QDhTWb-CRUQaHkITSSrF1w 提取码:chfs
命令行程序
基本用法
非系统服务运行CLI
该程序是一个控制台程序,可直接双击运行,或在控制台/命令行中运行。可通过命令行参数进行相关配置,如使用'chfs --help'来查看帮助:
usage: chfs.exe []
-file string
Configuration file.
-path string
Shared directories, separated by '|'. (default ".")
-port uint
HTTP listening port. (default 80)
-version
Print version.
参数说明:
help: 显示帮助信息
path: 你要共享的目录,默认为程序运行目录。如果需要共享多个目录,则用“|”符号隔开。注意:如果路径带有空格,则需要将整个路径用引号包住。
port: 程序使用的端口号,默认为80
file: 配置文件,该文件可配置上述配置项,语法相同,如果配置有效则覆盖对应配置项。另外,一些功能需要通过配置文件进行配置,比如页面自定义和SSL证书设置。更详细的说明请参考配置文件:点击下载,请认真参考。
version: 显示程序版本号
Tip:在Windows系统中,可以使用右键弹出菜单快捷地共享某个目录。步骤如下:
1, 下载注册表模板文件
2, 在该文件中编辑你的chfs.exe的真实路径,并可添加其他参数
3, 双击该脚本文件,进行注册表添加
非系统服务运行GUI
在windows系统中可以直接使用GUI版本,简单易用。
以系统服务运行
本程序不是一个服务程序,所以如果你要以系统服务运行,需要自己创建服务。下面给出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两个键值,设置好对应的文件路径即可。注意事项:
1,跟nginx使用的格式兼容
2,chfs支持的最低SSL版本为TLS 1.0
3,推荐监听端口设置为443
如何启用webdav?
程序默认支持webdav,跟http共用同一套访问规则。其地址为:http://host:port/webdav
---------------------------------------
请注意:
1,如果不存在键或对应值为空,则不影响对应的配置
2,配置项的值,语法如同其对应的命令行参数
---------------------------------------
版本:v3.1
更改:
- 修复无法启用HTTPS的缺陷
- 修复拖拽文件方式上传文件的目的目录不正确的缺陷
- 修复账户名称不能包含大写字母的缺陷
- 将缩略图的计算算法由Lanczos降为NearestNeighbor,并取消在后台的缓存
- 优化chfs专用回收站(~/.chfs_trashbin)的逻辑,增强其平台的兼容性
版本:v3.0
更改:
- 修复若干已知BUG
- 细节优化
- 支持英语、繁体
- 优化文件上传,降低资源占用,加速上传速度
- 支持安全删除文件(回收站)
- 重新设计了目录访问权限,设置默认访问权限后,可对任意子目录设置独立的访问权限
版本:v2.0
更改:
- 修复若干已知BUG
- 增加视频播放按钮(仅支持webm ogg mp4)
- 默认关闭图片缩略图
- 性能优化,降低进程的资源占用
版本:v1.10
更改:
- 所有API使用同一前缀:/chfs
- 修复若干已知BUG
- 增加上传文件夹功能
- 增加文本文件的简单编辑功能
- 增加全局搜索文件功能
- 细节优化
监听端口
port=
共享根目录,通过字符'|'进行分割
注意:
1,带空格的目录须用引号包住,如 path="c:\a uply name\folder"
2,可配置多个path,分别对应不同的目录
path=
IP地址过滤
allow=
用户操作日志存放目录,默认为空
如果赋值为空,表示禁用日志
log=
网页标题
html.title=
网页顶部的公告板。可以是文字,也可以是HTML标签,此时,需要适用一对``(反单引号,通过键盘左上角的ESC键下面的那个键输出)来包住所有HTML标签。几个例子:
1,html.notice=内部资料,请勿传播
2,html.notice=<img src="https://mat1.gtimg.com/pingjs/ext2020/qqindex2018/dist/img/qq_logo_2x.png" width="100%"/>
3,html.notice=<div style="background:black;color:white"><p>目录说明:</p><ul>一期工程:一期工程资料目录</ul><ul>二期工程:二期工程资料目录</ul></div>
html.notice=
是否启用图片预览(网页中显示图片文件的缩略图),true表示开启,false为关闭。默认关闭
image.preview=
下载目录策略。disable:禁用; leaf:仅限叶子目录的下载; enable或其他值:不进行限制。
默认值为 enable
folder.download=
-------------- 设置生效后启用HTTPS,注意监听端口设置为443-------------
指定certificate文件
ssl.cert=
指定private key文件
ssl.key=
设置会话的生命周期,单位:分钟,默认为30分钟
session.timeout=
文件/目录删除模式:
1: 安全删除:移动到系统回收站 [不是所有操作系统都支持,建议使用前进行测试。默认模式]
2: 安全删除:移动到chfs的专属回收站: ~/.chfs_trashbin, 程序会删除存储超过1个月的文件
3: 真正删除
file.remove=1
----------------- ------------------------
注意: 账户配置区域放置到配置文件的后面
------------------------------------------
----------------- 账户及控制规则 -------------------
[xxx] xxx即为账户名, 访客的用户名为guest
password 账户密码
rule.default 账户对所有的目录和文件的访问权限,但可以针对任意子目录进行重新设定访问权限,以覆盖默认的权限
rule.none 表示对哪些子目录设置为不可访问的权限,多个目录使用字符'|'分割,也可以分为多行。注意:该子目录本身也不可访问!
rule.r 表示对哪些子目录设置为读权限,多个目录使用字符'|'分割,也可以分为多行。注意: 该子目录本身不受影响,影响的只是它所包含的目录和文件!
rule.w 表示对哪些子目录设置为写权限,多个目录使用字符'|'分割,也可以分为多行。注意: 该子目录本身不受影响,影响的只是它所包含的目录和文件!
rule.d 表示对哪些子目录设置为最高访问权限,多个目录使用字符'|'分割,也可以分为多行。注意: 该子目录本身不受影响,影响的只是它所包含的目录和文件!
示例:
[foo]
password=bar
rule.default=r
rule.none=d:\公司制度|d:\财务票据
rule.r=d:\施工项目\2021年
rule.r=d:\施工项目\2022年
rule.d=d:\个人目录\foo
该账户名为foo,密码为bar,默认访问权限是读权限,但账户没有“d:\公司制度”和“d:\财务票据”的访问权限,且
对“d:\施工项目\2021年”和“d:\施工项目\2021年”只有读权限,对“d:\个人目录\foo”有最高访问权限。
账户xxx,访客的用户名为guest
[xxx]
password=
rule.default=
rule.none=
rule.r=
rule.w=
rule.d=
最后编辑:2024 年 07 月 09 日 11:16
本文链接:https://blog.zlrm.net/index.php/305.html(转载时请注明出处及链接! )
作品采用: 署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 许可协议授权。