web前端部署過程中快取出現的問題 生產實戰經驗 移動端H5
阿新 • • 發佈:2018-11-11
目錄
- 增加時間戳 或者 版本號
- chrome: provisional header are showed
- 漏掉的ng-include
- 手機各種機型 對快取的不同處理 (2018)
–
移動端H5混合應用的新版本生產部署之後,
出現的各種情況和實踐總結:
–
在資原始檔名後面增加一個隨機引數或者版本號
經過驗證非常有效
chrome: provisional header are showed
可能是nginx配置不同導致
1.測試伺服器返回是304 not modified
2.生產伺服器返回是200 ok (from disk cache) + provisional header are showed
不過都能正常更新,
provisional header are showed看似沒有發出請求,
其實還是比對過服務端的版本的
漏掉的ng-include
為了相容一箇舊的 沒有工程化的 angular專案,
漏掉了ng-include中的get請求,沒有再檔名後動態增加隨機引數,
導致資源沒有更新,
beware
手機各種機型 對快取的不同處理 (2018)
全部資原始檔的 檔名
全都加了動態生成的hash,
在可觀測到的移動裝置中:
iOS系統手機全部正常,
更新之後馬上能拉取到最新的資源,
某個版本安卓vivo,間歇性的在新資源和舊資源之間切換,[無解..]
其他多臺vivo正常,
兩臺努比亞 全部無法自動拉取新資源,
華為p系列的某臺機器 也無法自動清除快取,
–
在訪問入口index.html後加隨機引數也無效,
全部需要手動進入設定清除快取
–
影響因素:
原生App,
http伺服器的配置,
資源有限,無法一一排查、驗證,僅此記錄一下