构建产物文件名不带内容哈希,一年免验证的缓存策略导致每次蓝绿发布后 浏览器和CDN都会继续吃旧版本,用户需要清缓存或开无痕窗口才能看到更新。 改为no-cache后浏览器/CDN每次都会带条件请求向源站确认,未变化时只是 一次很快的304,一旦文件真的变了会立刻拿到新内容,不再需要手动清缓存。
首次部署时健康检查一直失败——容器内nginx只listen了IPv4(0.0.0.0:80), 但/etc/hosts里localhost解析到::1在前,wget http://localhost/因而连不上。 补上 listen [::]:80 双栈监听解决。部署脚本那边也同步改成直连127.0.0.1, 避免再依赖localhost的解析顺序。
- src/config.js 的 API_KEY 改为从构建时环境变量 TINODE_API_KEY 注入, 不再依赖官方demo默认值;未设置时保留原demo key作为本地快速测试的兜底 - webpack.config.js 新增 DefinePlugin 完成注入,并自动加载(gitignored的) .env.local,开发者本地调试不需要每次手动export - 新增 Dockerfile(node构建+nginx serve) 和 docker/nginx.conf - 新增 .gitea/workflows/deploy.yml:手动触发的蓝绿发布流程