kevin
|
28f8f19538
|
fix: install.sh 强制修正目录权限,防止旧版遗留问题
每次 install 都强制 chown + chmod 关键目录,
避免因旧版脚本或手动操作导致目录属主/权限不对。
|
2026-05-28 15:47:53 +08:00 |
|
kevin
|
58c8504c75
|
fix: 移除 ProtectSystem 沙箱限制,修复 unix socket 创建失败
ProtectSystem=strict/full 把 /etc /opt 等挂载为只读,
即使 ReadWritePaths 配合也会有各种坑。
服务已用专用低权用户 portal_page 运行,文件系统权限本身就够了,
没必要再加 systemd 文件系统沙箱。
|
2026-05-28 15:43:48 +08:00 |
|
kevin
|
5184d42d00
|
refactor: 移除 install.sh 中硬编码的配置模板
配置文件的生成和补全完全由 Go 程序负责,install.sh 只管目录和权限。
以后新增配置项只需改 Go 代码,无需同步修改安装脚本。
|
2026-05-28 15:37:53 +08:00 |
|
kevin
|
e32d51a989
|
fix: 修复 Linux 服务启动时配置文件写入权限问题
- install.sh: 安装时预生成默认配置文件到 /etc/portal_page/config.toml
- systemd: ProtectSystem 从 strict 改为 full,避免 /etc 子目录写入被拒
- systemd: ReadWritePaths 简化为整个 INSTALL_DIR(含 templates/static/sock)
|
2026-05-28 15:34:56 +08:00 |
|
kevin
|
c51e0df53e
|
up
|
2026-05-28 15:27:48 +08:00 |
|
kevin
|
dcbc4471e8
|
加上环境变量
|
2026-05-28 15:20:41 +08:00 |
|
kevin
|
5074398138
|
feat: 配置系统 + Linux 服务安装脚本
- 新增 config/config.go:TOML 配置包,自动生成配置文件 + 缺失项补全
- Windows: conf/config.toml(基于工作目录)
- Linux: /etc/portal_page/config.toml(FHS)
- 配置项:data.dir, database.type(sqlite/mysql), server.addr, server.unix
- Linux 默认 unix socket: /opt/portal_page/server.sock
- database/db.go 重构支持 MySQL
- handlers/upload.go 改用 config.GetUploadDir()
- main.go 整合配置启动流程,支持 TCP/Unix socket 双模式
- 新增 install.sh:Linux 服务一键安装/卸载/管理脚本
- 拉取代码 → 编译 → 部署到 /opt/portal_page → systemd 服务
- 自动创建 portal_page 用户和 FHS 目录
- 支持 start/stop/restart/status
|
2026-05-28 14:59:51 +08:00 |
|