fix: 加固链接/图标安全与版本一致性;sync-articles 对齐 best-effort
- 模板与运行时统一做 URL scheme 白名单校验(不安全降级为 #),并清洗 icon class;分类标题/新增分类改用 DOM API 避免 innerHTML 注入 - sync-articles 主入口异常不再返回非 0 退出码,避免阻断 build/deploy - window.MeNav.version 改为从 meta menav-version/配置自动读取,避免写死版本 - 文档/配置:新增 security.allowedSchemes 配置说明
This commit is contained in:
@@ -45,13 +45,20 @@
|
||||
|
||||
### 2026/01/04
|
||||
|
||||
**1. PageSpeed 首屏性能优化**
|
||||
**1. 首屏性能优化**
|
||||
|
||||
- 移除首页副标题固定 Quicksand 外链字体,改为跟随全站字体
|
||||
- 字体外链 CSS 支持 `fonts.preload: true`(`preload + onload` 非阻塞加载,含 `<noscript>` 回退)
|
||||
- Font Awesome CSS 改为 `preload + onload` 非阻塞加载,降低 render-blocking 影响
|
||||
- 构建阶段压缩 `style.css` / `script.js` / `pinyin-match.js`,减少传输体积
|
||||
|
||||
**2. 安全与部署稳定性**
|
||||
|
||||
- 链接安全加固:模板与运行时统一校验 URL scheme(不安全链接降级为 `#`),新增 `security.allowedSchemes` 支持显式放行自定义协议
|
||||
- 去除外部输入的 `innerHTML` 拼接:分类标题更新/新增分类改用 DOM API 构建,降低注入风险
|
||||
- `sync-articles` 对齐 best-effort:同步失败不再以非 0 退出码阻断构建/部署
|
||||
- 版本号来源统一:`window.MeNav.version` 不再写死,自动读取构建注入版本(用于扩展/调试识别)
|
||||
|
||||
### 2026/01/03
|
||||
|
||||
关联 Issue:[#31](https://github.com/rbetree/menav/issues/31)
|
||||
|
||||
Reference in New Issue
Block a user