FileBrowser(手机网页版文件管理器)

2026-08-12 14:35 上线。用途:见顾客时手机快速展示项目文件(照片/PDF 内建预览,不用装 app)。选型定案:现成开源优先、不自研(2026-08-11-12)。

访问信息

网址https://desktop-f9ksppp.tail1b1993.ts.net/fb(Tailscale 内网 HTTPS 绿锁)
登录admin / admin123(默认密码——尽快改
根目录D:\hermes\hsdesign_work(项目文件——照片/PDF/报价)
版本v2.63.23

运维要点

  • 手机访问:手机连 Tailscale → 浏览器打开网址(不用装 app,像 Prime Watch 一样)
  • 服务进程:FileBrowser 本机后台运行(进程名 filebrowser);需电脑开机 + 服务在跑
  • 命令坑:v2 命令格式不同(无 serve 子命令——直接用参数启动);users add 要带 -d(默认数据库不存在时);Windows 安全检查器可能误判 exe 当脚本读 → 用 WSL 包装执行
  • base-url 坑(8/12 18:31):资源绝对路径 /static/... + 服务挂在 /fb → 资源全 404 无限 loading——启动必须带 base-url 修复
  • 8/12 19:55 教训:kill 服务后忘了重启 → /fb 一直 loading(重启即恢复)——kill 后立即重启或做开机自启
  • ⚠️ 项目已归档(9 月后无安全更新)——内网低风险先用,长期评估替代方案
  • 待办:① 改默认密码 ② 开机自启未设(要设说一声)③ 想浏览其他目录(整个 D 盘/vault)按需加

后续增强(需要才做)

  • PWA 离线缓存(缓存最近 10 天开过的文件——手机存储有限,只缓存缩略图/小图)
  • 备选方案:Google Drive 网页版(drive.google.com)、Google Photos 分享相册(项目照集中 → 给链接)

相关


自研版 cached_files(8/13 午更新:Phase 6 已部署上线

与开源版并行的自研文件浏览器(PWA 离线缓存)——不是替代品,是”动态缓存”增强(8/12 定调:质量优先、不着急、独立 session)+ 与开源版互补(FileBrowser 管文件/上传下载;cached_files 只读预览+离线缓存 show 顾客)。详见 FileBrowserApp_Graph

  • 位置D:\hermes\hsdesign_work\cached_files;Prime session:~/prime_agent_sandbox/sessions/file-browser/(-r 用绝对路径 .jsonl)
  • 进度:P1 后端 ✅ → P2 前端 ✅ → P3 PWA 离线缓存 ✅(SWR 打开即缓存 / IndexedDB LRU 500MB→85% / 离线模式 / ✅☁️ 徽标 / 设置页)→ P4 增强 ✅(搜索 /api/search + 前端 300ms 防抖 / 多根切换 / 三键排序 / scandir 1.6× 提速)→ P5 质量 ✅(安全审计 8 项全修复 / JSON 错误规范 / 压测 512MB 流 153MB/s / README+SOP;pytest 120/120)→ P6 部署 ✅(8/13 午完成)
  • 部署(8/13 午):pytest 121 passed(Windows 全绿)→ 服务 127.0.0.1:8081 → Tailscale https://desktop-f9ksppp.tail1b1993.ts.net/files(200 实测)→ 开机自启(计划任务 HS_CachedFiles);手机实测:开 Tailscale → /files/?token=... → 飞行模式验证离线缓存
  • 认证(任务 22)app/auth.py 新增 ?token= 查询参数(与 Bearer 等效、常量时间比较)——App Portal SSO 登录后自动带 token 免登录;⚠️ URL 带 token 有日志泄露面 → 访问日志需脱敏
  • 部署纪律:P6 前复跑全量 pytest;单 token 无吊销/无限流(内网可接受,公网需反代限流);token 定期轮换
  • 教训:Prime 大任务 5 次中断 → 拆小任务(A-D 子任务);“假退出”(timeout exit 0 但 WSL 子进程还在跑)→ 先查进程再重派,否则撞 session 锁