HTML缓存本质是服务端通过Cache-Control等响应头控制浏览器对index.html的HTTP缓存,而非模板缓存;静态页可用public, max-age=3600但需JS/CSS带内容哈希,动态页须用private, max-age=0, must-revalidate,敏感页禁用缓存;meta标签无效,script需defer/async,且资源必须哈希+压缩。

HTML 文件本身不能被“模板缓存”加速——真正起作用的是浏览器对 index.html 的 HTTP 缓存行为。混淆模板结构和 HTTP 缓存,是线上页面长期卡在旧版本、JS 更新了但按钮文案没变的最常见原因。
Cache-Control 值必须匹配页面动态性
给 浏览器解析 HTML 是流式的, 如果 把任意文章或文档内容转换成精美的全屏翻页 HTML 演示文件(幻灯片风格)。当用户发来一篇文章、文档链接、Markdown 内容、或粘贴的文本,并且希望生成演示用的 HTML 时触发。支持任意内容来源:iWiki 链接、KM 链接、本地文件路径、直接粘贴的文本。生成的 HTML 文件保存到本地工作区,并通过企微直接发送给用户。触发词示例:帮我把这篇文章做成PPT、转成演示文档、生成HTML幻灯片、做个演示、转成可以演示的格式、article to deck、make a slide。 最容易被忽略的一点:HTML 缓存时间越长,对 JS/CSS 路径哈希的准确性要求就越高——一个漏掉的哈希更新,就会让整个缓存链路失效。index.html 设置 public, max-age=3600 是高频错误:它会让用户持续加载旧 HTML,哪怕你已上线新 JS、删掉某个
public, max-age=3600,但前提是所有 JS/CSS 路径含内容哈希(如 main.a1b2c3.js)private, max-age=0, must-revalidate 或直接 no-cache——允许缓存,但每次都要向服务器验证no-store,禁用任何本地/代理缓存meta http-equiv="Cache-Control" 在 Chrome/Firefox/Edge 中完全无效,仅极老 Safari 可能降级识别,别写script 标签位置和属性直接影响白屏时长
<script></script> 放错位置会暂停整个 DOM 构建,再快的缓存也救不了白屏。
里且不加 defer 或 async
defer:下载不阻塞,执行在 DOM 构建完成后async:下载不阻塞,执行时机不可控,但不影响主流程光设 Cache-Control 不够,构建与服务端配置必须协同
index.html 缓存了 1 小时,但它引用的 main.js 没启用 content hash,用户加载的仍是旧逻辑——缓存策略就失效了。
contenthash,Vite 默认行为),再配 Cache-Control: public, max-age=31536000
index.html 的缓存规则,不能和静态资源共用同一 location 块gzip on 或 brotli on,HTML 体积通常缩小 50%~70%html-webpack-plugin 的 cache: true 只加速本地开发编译,不影响浏览器缓存行为
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!










