從 WordPress 轉到 Hugo
阿恆
我使用 WordPress 作為 HKPUG 和其他網誌背後的系統,已經很多年,作為一個用家,對 WordPress 的簡單易非常欣賞,但是作為系統管理員,也是有多年經驗的開發人員,永遠對效能、簡單、反應速度有本能的執着,所以,我現在正把 HKPUG 和其他網誌,轉到 Hugo。
甚麼是 Hugo?
Hugo 是一個靜態網頁產生器,我用 markdown 格式把網誌寫好,送入 Hugo 這台機器,它便會幫我把網誌轉換成 HTML 格式,伺服器直接把這些 HTML 檔案發送給瀏覽器。
這樣做的好處是:
- 伺服器不再需要 WordPress 或任何網誌軟件,節省執行程式的時間,提高網站的反應速度。
- 不需執行任何軟件,表示杜絕一切透過網站軟件入侵的可能性。
- 不需執行任何軟件,表示伺服器無需安裝 PHP 或任何軟件所需的語言。
- 不需安裝任何軟件和語言,表示其他附帶的軟件,例如數據庫系統(例如 MariaDB)、緩存系統(例如 memcache)等等通通不需要。
- 少安裝這一大堆軟件,表示系統的防守邊界(defense perimeter)縮小了,系統的安全性也提高了。
- 少安裝這一大堆軟件,表示系統的硬件要求(CPU、記憶體、網絡速度等等)降低了,我將可以用更便宜的伺服器,提供更多的網站。
Hugo 容易用嗎?
老實說,像 Hugo 這種靜態網頁產生器不適合非技術人員,因為:
- 大部份這類產生器的輸入都是 markdown 寫成的文章,Markdown 的格式雖然非常人性化,但始終不是 WYSIWYG(所見即所得)。用得多自然熟識,但這個過程需要時間。
- 這類產生器沒有精美的網頁或圖像介面,一切指令都是透過命令行(command line)下達,一切設定都是透過編輯設定檔案來完成。
- 由於伺服器不再執行任何軟件,處理用戶的留言便成了一個大難題。一些使用外部的留言服務(例如 Disque、Facebook),一些使用輕便的留言系統。前者牽涉隱私問題,後者違反了放棄安裝語言、減少安裝軟件、縮小防守邊界等等目標。如何取捨,如何實作,非技術人員幾乎不可能做正確的決定和執行(即使是技術人員也很難)。
HKPUG 的現狀
網絡有工具把 WordPress 的文章移植到 Hugo,但是得到的東西還是需要手動微調,現在大部分的文章已經處理好。我將會把 HKPUG 轉換到 Hugo,才繼續處理餘下的文章。所以,大家很快就可以感受到新 HKPUG 飛快的反應!