Flarum 快取的詳細介紹與清理
Flarum beta 版的快取問題是造成這個論壇程式各種錯誤的主因,例如:nojs、後台改了樣式,但前台不變、切換語言遇到錯誤顯示,顯示為 xxx.xxx.xx。下面我將詳細講解一下 Flarum 的快取機制。
Flarum 的快取有三大部分:
主快取(大部分 nojs 頁面的主因)
簡介:由論壇生成、支撐整個 Flarum 網站的 JS 和 CSS 合併檔案,如果關閉 debug(預設)將為壓縮狀態,開啟 debug 則為非壓縮狀態。
位置:/assets 目錄下的 admin-xxx.css、admin-xxx.js、forum-xxx.js、forum-xxx.css,以及 rev-manifest.json。
作用:顧名思義,兩個以 admin 開頭的是代表後台的 JS 和 CSS 檔案,而以 forum 開頭的則代表網站前台的 JS 和 CSS 檔案,rev-manifest.json 將記錄這四個檔案的名稱,開啟網站的時候會對 rev-manifest.json 發送請求來取得對應的 CSS 和 JS 檔案。
清理:官方建議 cd 到網站根目錄,輸入 php flarum cache:clear 來進行清理,但這個清理不會刪除 rev-manifest.json,部分外掛清理後還需要手動刪除 rev-manifest.json 檔案。
儲存快取(一部分 nojs 頁面的主因)
簡介:Flarum 第一次生成的快取檔案(從系統和外掛提取其 JS、CSS 等,分散儲存在根目錄的 /storage 下面),然後再把 CSS 和 JS 合併成上面的主快取。
位置:/storage 目錄下的 cache、formatter、less、locale、tmp、views 等資料夾。
作用:
- cache:常規快取,分散壓縮論壇用到的各種快取內容。如果在你開啟外掛之後無效或者 nojs,並且清理了主快取也沒有作用的情況下,請刪除這個資料夾裡的所有檔案,一般都能得到解決。
- formatter:BBCode 快取。如果你新增了自訂 BBCode(包括加入或編輯了線上影片的
flarum-ext-mediaembed外掛),請務必手動刪除這個資料夾裡的檔案。 - less:顧名思義,論壇用到的所有 Less 快取(Less 簡單來說就是進階版的 CSS 語言,Flarum 的 CSS 都由 Less 生成)。如果出現開關外掛後樣式錯誤,可以考慮刪除這個資料夾裡的所有檔案。
- locale:切換成中文之後,標題按鈕之類全部顯示 xx.xxxx.xxxx,不用想了,把這個資料夾裡的檔案全部刪除,它就是用來快取語言檔案的。
- tmp:論壇臨時快取,正常情況下會自行清理。
- views:檢視快取,包含快取 CSS、HTML 等等內容。
瀏覽器快取
這個不用多介紹了,基本上你每次清理快取,都需要 Ctrl + F5 重新整理瀏覽器頁面,因為 Flarum 在你修改後不會同步更新瀏覽器快取。
總結:造成 Flarum 那麼多問題,主要還是 Flarum 快取機制的原因,快取的地方多,而且幾個快取之間會因為各種問題無法同步重新整理。當然,如果你安裝論壇之後不去動後台設定(特別是外掛開關或者外掛設定),Flarum 還是穩如泰山的。
評論
(0)暫無評論,來說兩句吧