Go 1.27.1 (Gin+GORM) + Vue 3 文件快传服务: - 安全审计全部修复(docs/security-audit-2026-09-05.md): bcrypt 密码哈希与自动升级、presign 直传服务端大小/内容校验、 全局请求体上限、依赖升级(govulncheck 0 命中)、janitor 后台清理、 管理端审计动作落库、/admin CORS 收紧、通知内容白名单净化、 会话默认 7 天、限流缓存故障降级、robots.txt 端点等 - 前端:取件链接复制修复(不再重复拼接提取码)、markdown 净化器加固 - Redis 支持库号(FCB_REDIS_DB / redis://…/db URL) - 文档:docs/api/* 与 openapi.yaml 同步最新行为(robots.txt、 提码 5 位起、chunk 32MiB 上限、admin 审计动作等) 验证:gofmt/go vet/go test 全绿;二进制端到端冒烟通过
62 lines
2.5 KiB
Markdown
62 lines
2.5 KiB
Markdown
# Logo 自定义
|
||
|
||
## 默认 Logo(内置,v2 需求 ⑤)
|
||
|
||
| 项 | 默认值 | 用途 |
|
||
|---|---|---|
|
||
| 页面导航 Logo | 前端打包本地资源 `/assets/logo-*.svg`(源:`web/src/assets/brand/logo.svg`) | 导航栏 `<img>`;`config.logo_url` 为空时回落使用 |
|
||
| favicon / 备用 Logo | 前端打包本地资源 `/assets/favicon-*.png`(源:`web/src/assets/brand/favicon.png`) | `index.html` `<link rel="icon">` + 动态 favicon 回落 |
|
||
|
||
v2 起默认不再引用远程 URL:`GET /api/v1/config` 中 `logo_url`/`favicon_url` 默认下发空串,
|
||
前端 `displayLogoUrl`/`displayFaviconUrl` 判空后回落到打包的本地资源。
|
||
管理端仍可设置任意 URL 全站替换(三步如下)。
|
||
|
||
## 管理端自定义(三步)
|
||
|
||
1. **登录后台**:`POST /admin/login` 获取 Bearer 令牌。
|
||
2. **保存配置**:`PATCH /admin/config/update` 更新 `logo_url`(与可选 `favicon_url`),值为图片 URL 或经管理端上传后得到的地址。
|
||
3. **全站生效**:保存即写入 settings KV 并热更新,前端读取公共配置立即换新 Logo,无需重启。
|
||
|
||
curl 示例:
|
||
|
||
```bash
|
||
curl -s -X PATCH http://localhost:8466/admin/config/update \
|
||
-H "Authorization: Bearer $TOKEN" -H 'Content-Type: application/json' \
|
||
-d '{"logo_url":"https://cdn.example.com/logo.svg","favicon_url":"https://cdn.example.com/favicon.png"}'
|
||
```
|
||
|
||
```json
|
||
{ "code": 200, "msg": "ok", "data": { "ok": true } }
|
||
```
|
||
|
||
> 也可以在管理界面「系统设置」页操作(上传图片或填写 URL),效果相同。
|
||
|
||
## 校验生效
|
||
|
||
```bash
|
||
curl -s http://localhost:8466/api/v1/config
|
||
```
|
||
|
||
```json
|
||
{
|
||
"code": 200, "msg": "ok",
|
||
"data": { "config": { "logo_url": "https://cdn.example.com/logo.svg", "favicon_url": "https://cdn.example.com/favicon.png" } }
|
||
}
|
||
```
|
||
|
||
## 恢复默认
|
||
|
||
把 `logo_url` / `favicon_url` 置回默认值(空串,前端回落本地打包资源)即可:
|
||
|
||
```bash
|
||
curl -s -X PATCH http://localhost:8466/admin/config/update \
|
||
-H "Authorization: Bearer $TOKEN" -H 'Content-Type: application/json' \
|
||
-d '{"logo_url":"","favicon_url":""}'
|
||
```
|
||
|
||
## 相关行为
|
||
|
||
- 前端运行时优先读取配置值;空值回退前端打包的本地资源(`web/src/assets/brand/logo.svg` + `favicon.png`,经 `displayLogoUrl`/`displayFaviconUrl` 判空回落)。
|
||
- `site_name` 同样支持运行时自定义(`PATCH /admin/config/update` 的 `site_name` 键)。
|
||
- Logo/favicon 仅涉及展示层,修改不影响会话与令牌(不轮换 `jwt_secret`)。
|