Egg.js 生产环境静态文件缓存问题及解决方案
问题:
Egg.js 应用部署静态文件后,重启服务器,首次访问加载的是旧版本静态文件,造成页面显示异常。
原因分析:
此问题源于 Egg.js 生产环境下的静态文件缓存配置失效。config.default.js
中的 maxAge
配置在生产环境下无效。
解决方案:
将 maxAge
配置移至 config.prod.js
文件中,并在启动应用时使用 --env=prod
参数指定生产环境。 将 maxAge
设置为 0 可禁用缓存,确保每次都加载最新资源。
最佳实践:
maxAge
值,但需谨慎,避免长期缓存导致更新失效。 对于动态内容(如 HTML),不建议使用强缓存。通过以上调整,可以有效解决 Egg.js 生产环境下静态文件缓存导致的资源加载问题,确保应用始终加载最新的静态资源。