Commit Graph
3 Commits
Author SHA1 Message Date
cbb 58197fd35b fix: v1.5.5 — 「打开 Gitea」远程地址推断三重保险
根因:gitea_ui() 有个判断 bug——当请求 Host 是 127.0.0.1:8899
(CGI 内部连接面板的本地地址)时,面板把它当作"远程主机名"
去替换 gitea_host 中的 127.0.0.1,结果还是 127.0.0.1:3000。

修复:
1. 修判断 bug:只有推断出的真实主机名不是 loopback 时才替换
   gitea_host 中的 127.0.0.1(本地直连保持原样,不再被错误"替换")
2. gitea_ui 新增 Referer 兜底:即使 CGI 没转发 Host/X-Forwarded-Host
   (fnOS CGI 环境里 $HTTP_HOST 可能为空),也能从浏览器自带的
   Referer 头里推断出真实主机名
3. CGI 代理兜底转发:从 X-Forwarded-Host / HTTP_HOST / Referer
   多源提取真实主机,作为 Host 和 X-Forwarded-Host 转发
4. 调用方传入 X-Forwarded-Host / Host / Referer 三个头

实测 6 种场景(远程 CGI / 远程直连 / 只有 Referer / 本地直连 /
全部为空 / 远程 IP)全部生成正确地址
manifest 1.5.4 → 1.5.5
2026-10-15 01:23:57 +08:00
cbb b4673d05a7 fix: v1.5.4 — 远程访问时「打开 Gitea」用真实主机名 + 移除页面泄漏文本
- CGI 代理 (index.cgi) 现在把真实访问 Host 头和 X-Forwarded-Proto
  转发给面板;面板据此把「打开 Gitea」按钮的地址从 127.0.0.1
  替换成用户实际访问的主机名(远程访问时从 nas.local:5667 变为
  http://nas.local:3000)
- 移除 PAGE_SETTINGS 末尾两行 // ---- 模态弹窗:... ----
  注释(之前在 </script> 外面泄漏成了页面上的可见文本垃圾)
- manifest 1.5.3 → 1.5.4
2026-10-15 01:19:44 +08:00
cbb 4d6f71af5b feat: GiteaHubSync v1.0.0 — fnOS 原生应用:Gitea→GitHub 镜像同步
- 每次推送到飞牛 Gitea(3000 端口)的代码 10 秒内自动镜像到 GitHub 7 个私有仓库
  (SMB_Android / DCU_APP / GD32E50X_BOOT / DCU_DesktopController / Motor_v2 /
  DCU_ECAT_Master / GD32_BOOT),真镜像语义(删分支/标签同步删)
- 标准 .fpk 原生应用:不进 Docker,依赖 python312,安装后进入应用中心已安装列表
  和桌面启动台,支持启动/停止/重启/卸载,NAS 重启自动恢复
- 控制面板(:8899):自动同步开关、立即同步、仓库状态、同步日志、打开 Gitea
- GitHub 推送走 SSH 22 端口直连(HTTPS 443 本地网络被断),部署私钥随应用本地分发
- 附 fnos-install.js(命令行自动安装)、build.sh(重新构建 fpk)、genicon.py(图标生成)

注意:GitHub 部署私钥(GiteaHubSync/app/ssh/id_ed25519)与打包产物 .fpk
按 .gitignore 规则不进仓库,仅保留在工作目录本地分发。
2026-10-13 19:12:49 +08:00