类别:Win其它 / 日期:2026-07-03 / 浏览:327 / 评论:0
你想快速搭建属于自己的共享服务器并且可以跨平台访问吗,你是否厌烦现有的FTP服务器部署复杂和用户权限设置繁琐呢?小编今天给大家介绍一款开源文件共享服务器chfs,首先搭建非常简单,就是一个文件,不需要其他任何插件,直接运行就行了;另外访问也方便,只要在同一个网络通过浏览器就能访问。
一、chfs软件介绍
CuteHttpFileServer/chfs是一款开源的、免费的、HTTP协议的文件共享服务器,使用浏览器可以快速访问。它具有以下特点:
单个文件,核心功能无需其他文件
跨平台运行,支持主流平台:Windows,Linux和Mac
界面简洁,简单易用
支持扫码下载和手机端访问,手机与电脑之间共享文件非常方便
支持账户权限控制和地址过滤
支持快速分享文字片段
支持webdav协议
二、chfs安装部署
1、下载chfs执行程序
CuteHttpFileServer/chfs是开源软件,可以通过GitHub开源网站或者chfs官网(http://iscute.cn/chfs)下载带图形化的windows运行程序和linux对应的版本软件。
百度网盘分流下载:https://pan.baidu.com/s/1QDhTWb-CRUQaHkITSSrF1w 提取码:chfs
docker镜像: https://hub.docker.com/r/docblue/chfs
ps:CuteHttpFileServer/chfs默认是不需要配置文件的,但为了配置我们自定的需求,建议从官网将配置文件模板chfs.ini也下载一下。
2、windows系统部署chfs
直接运行解压文件gui-chfs-windows.zip得到的chfsgui.exe执行程序就行。如下图,各种功能一目了然,配置好之后点击左上角的开始按钮就运行了。
ps:因为windows系统相对来说不是很稳定,另外windows部署的网站打开排版没有linux部署的排版好看,文章主要介绍linux系统部署chfs。
3、linux系统部署chfs
(1)系统环境:centos 7.4_64系统,IP是static静态模式,这样以防重启服务器后IP有变化导致网站访问不了。安装包为:chfs-linux-arm64-2.0.zip
(2)开始部署。为了管理方面,在/etc目录下创建一个chfs文件夹,命令为mkdir /etc/chfs然后将安装包上传到chfs目录下解压,给chfs二进制文件授予755执行权限chmod 755 chfs
然后直接./chfs运行就ok了。
备注:直接./chfs运行会出现运行信息,比如监听端口、共享路径、默认权限、日志路径、共享文件服务器访问网址(服务器地址是192.168.3.8;122.1是虚拟机自动生成虚拟网络接口)
备注:界面是不是很清爽啊,但是默认的访问是有读、写和删除权限的,实际使用中包括监听端口、共享目录、日志目录和权限都是需要优化一下的。
三、chfs使用攻略
因为直接执行./chfs虽然共享文件服务器也是能正常运行的,但是它会跳出个运行信息且不能结束不然chfs程序就停止了;且权限、监听端口、共享目录等都不是最优的,我们要安装实际情况修改下。
配置chfs程序在后台运行,并且设置开机自动运行,这样方便使用和维护简单,不需要服务器关机重启后手动执行下命令。
1、优化共享文件服务器配置
查看下载下的配置文件模板,按实际需求修改。在/etc/chfs目录下创建log目录存放日志,创建chfs.ini文件作为配置文件。命令如下(默认是处于/etc/chfs目录下,不然命令要加绝对路径):
mkdir logs
vim chfs.ini输入以下内容
port=8080
path=/home/test/software
log=/etc/chfs/logs
rule=chengbo:123456:RWD
rule=::R
增加chfs.ini配置文件后,再执行程序命令为:
/etc/chfs/chfs --file=/etc/chfs/chfs.ini
2、配置后台运行
这样即使关闭当前连接的窗口共享文件服务器也是正常运行的,执行命令如下:
nohup /etc/chfs/chfs --file=/etc/chfs/chfs.ini &
3、配置系统启动自动运行命令
在/etc/rc.local中加入上面的执行程序命令,另外给rc.local755执行权限。命令如下:
chmod 755 /etc/rc.local
然后,重启一下系统就可以很嗨皮的使用CuteHttpFileServer/chfs文件共享服务器,是不是很简单。
4、访问chfs共享文件服务器
在浏览器中输入:http://192.168.3.8:8080进入chfs文件共享服务器
默认用户只有读的权限,只能下载文件,但不可以上传和删除文件。
登陆的用户拥有读、写和删除权限。
ps:更多内容比如网页标题、网页顶部公告板可以参照配置模板修改配置哦,更改chfs.ini配置文件后需要重新执行命令一下生效。
5、配置webdav方式访问
chfs软件是支持webdav协议的,所以可以通过webdav协议将文件共享服务器的内容映射到我的电脑的,相当于访问本地磁盘一样方便。方法如下:
1、首先下载名称为RaiDrive的软件并安装,该软件RaiDrive使云存储或NAS轻松成为网络驱动器,支持协议:WebDAV等。
2、配置webdav方式连接chfs共享文件服务器
打开,在add添加选项中,选择NAT选项卡,然后选择WebDAV方式
输入chfs共享文件服务器地址http://192.168.3.8:8080/webdav,然后输入用户名和密码;驱动器盘符任选一个。
然后再计算机-我的电脑就能看到多了一个Z盘符的网络驱动器。
总结:
CuteHttpFileServer/chfs文件共享服务器是不是部署非常简单啊,只需要给个执行权限,直接执行chfs二进制文件就行了,即使修改权限也就是几条命令的事情。
-------------------------------
以下是官方的配置文件模板:http://iscute.cn/asset/chfs.ini
#--------------------------------------- # 请注意: # 1,如果不存在键或对应值为空,则不影响对应的配置 # 2,配置项的值,语法如同其对应的命令行参数 #--------------------------------------- # 监听端口 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=















