1. 问题描述
在内网中,我们已搭建文件服务,平时需要上传很多文件来与他人共享,或者直接允许对方直接查看下载。对于上传,我们使用 SFTP 客户端,或者那些 Chrome SFTP 扩展工具。对于下载,我们使用 Nginx 直接暴露特定目录文件列表。但是,这些工具都不是很方便。比如,需要安装客户端、Nginx 文件列表页不够美观、操作比较繁琐、不能直接预览文件等等。
我们需要类似文件管理器的功能来管理远程服务器的文件,简化操作。在我们认知里,只有 B/S 与 C/S 两种架构方案,既然 C/S 不行,那就寻找 B/S 方案。在这里,便是寻找基于网页的文件管理器。(其实换个角度,如果 C/S 架构能够解决我们的问题,那它必须是打开后能够直接管理服务器文件的,但是我们还会使用 Windows 操作系统,这里没有跨平台的方案。并且也不是每个人都熟悉 SFTP 的使用方法,在用户体验上终究比不上网页端的“登录后便可以用”的特点)
该笔记将记录:如何使用基于网页的文件管理器,来管理服务器中的文件,以及一些常见的问题。
2. 补充说明
很多文件管理器客户端,支持 fuse 特性(比如 PCManFM 可以通过 SSH 挂在远程文件系统)。但是,使用和管理依旧不是很方便,比如不能跨平台、需要配置等等。
3. 解决方案
3.1. File Browser(正在使用)
filebrowser/filebrowser: Web File Browser(https://github.com/filebrowser/filebrowser )
# 02/07/2021 这是我们正在使用的文件管理系统,详细介绍参考 File Browser(https://k4nz.com/07.Linux_as_a_Work_Environment/File_Manager_and_Cyberlocker/File_Browser.html) 笔记。
1)支持 Guest 访问,即无需设置帐号即可访问;
2)支持视频播放(基本等同于浏览器播放,所以需要浏览器支持的视频格式);
3.2. FileRun
FileRun - File Manager(http://www.filerun.com/ )
另一个网页版的文件管理器,还附带了多平台的客户端。是一个不错的选择,也分为 Free Version 与 Enterprise Version。
1)支持 Guest 访问,即无需设置帐号即可访问;
2)支持文档在线预览;
3.3. Tiny File Manager
prasathmani/tinyfilemanager: The best web based PHP File Manager in single file, Manage your files efficiently and easily with tinyfilemanager(https://github.com/prasathmani/tinyfilemanager )
演示站点:https://tinyfilemanager.github.io/demo/(https://tinyfilemanager.github.io/demo/)
1)Google/Microsoft doc viewer helps you preview PDF/DOC/XLS/PPT/etc.
2)可以进行文本的编辑;
3.4. eXtplorer File Manager
eXtplorer - a PHP-based File Manager(https://extplorer.net/ )
Web 版的文件管理器。通过浏览器来管理服务器上的文件。当然,要具有适当的权限。eXtplorer File Manager项目主页(https://sourceforge.net/projects/extplorer/?source=typ_redirect)
3.5. Cloudreve
GitHub项目地址(https://github.com/HFO4/Cloudreve)
国产的Web文件管理器,使用ThinkPHP框架开发。
3.6. KodExplorer
kalcaddle/KodExplorer: A web based file manager,web IDE / browser based code editor(https://github.com/kalcaddle/KodExplorer )
功能比较丰富,但是付费版本的功能更多。我们没有使用过,这里只是简单记录。
4. 其他工具
Snap2HTML - Create fancy dir listings(https://www.rlvision.com/snap2html/about.php )
创建目录结构的快照,以 HTML 页面的方式展示,仿佛 Web 应用。当然,由于页面是生成的,所以目录修改之后,页面是不会发生变化的。ZapperDJ/DiogenesList: Multiplatform HTML directory listing creator(https://github.com/ZapperDJ/DiogenesList/blob/master/template.html ) 是 Snap2HTML 的命令行版本。
5. 参考文献
File Browser - A Cross-platform Stylish Web File Manager - OSTechNix(https://ostechnix.com/filemanager-cross-platform-stylish-web-file-manager/ )
本文暂时没有评论,来添加一个吧(●'◡'●)