好久不見,新年開始一直忙著畢業設計和實習找新的工作,一直沒有空去將一些折騰過的東西記錄成為博客,最近在寫畢業設計的間隙終於對博客進行了一波優化,順便寫篇博客記錄一下。
在過去的部署中,博客一直是採用多節點部署並且通過 dnspod 的分地區解析做流量調度,將流量解析到盡量近的節點來盡量保證博客訪問的速度。而多個節點之間的博客文件同步一開始用的是定時任務從 github 上面更新,後來改成了使用 syncthing 進行同步,這種方法看起來比較蠢,但是也持續的保證了我的博客在這兩年期間的順暢訪問。
最近在翻 sukka 大佬的博客過程中,看到了 cloudflare worker 可以聯合 kv 存儲用來部署靜態網站,於是乎我就先將自托管的圖片提供服務 (就是一個存了圖片的 http 服務),部署到了 cloudflare 上面,測試速度以及延遲也相當不錯,所以就想徹底的把博客這一套東西完全遷移到 cloudflare 上面去。
這樣就能保證我博客在我不主動折騰的情況下保證極高的可靠性以及相對不錯的響應速度。
404 頁面異常#
在 worker-site/index.js
文件中,有一段邏輯是控制在 url 無法獲取到文件的時候返回 /404.html
。但是一部署上去我就發現了不對勁,這個 404 頁面直接源代碼顯示,並沒有被瀏覽器渲染出來。
經過 F12 大法查看 network 的 response 知道返回的數據中缺少了個指定響應數據格式的 header。
修復這個情況只需要在返回響應的時候加上相應的 header 即可,代碼修改可以參考我提的 PR