因為工作的關係讓我覺得如果再不寫些東西真的會變笨了,近期blog弄好也開始寫文章,雖然還想加些功能跟改改版型,不過還是想先分享一下這個blog使用的平台Ghost。
過往做網站的時候很常幫客戶架設Wordpress,免費開源跟主機好選擇,不管是做官網或購物網站都很方便,如果要特殊一點的需求也可以搭配海量的Plugin拼出來,缺點就是會變得很臃腫而已,也是因為這個原因,這次在架設blog的時候我打從一開始就沒打算用Wordpress,如果只是寫個blog,還是想使用簡單俐落的方式,畢竟Wordpress真的太腫了,再加上我原本就一直想用看看Ghost。
以下擷取 Wikipedia
Ghost是一款個人部落格系統,它使用Node.js語言和MySQL資料庫開發,同時支援MySQL、MariaDB、SQLite和PostgreSQL。使用者可以在支援Node.js的伺服器上使用自己的部落格。
如上面所說,這次部署上跟之前使用Wordpress最大的差異點就在語言上,使用PHP的Wordpress在主機選擇上很多,但是要跑Node.js就比較麻煩一點,當然各種付費Cloud跟VPS很方便,不過在無預算的情況下我只能想辦法找“完全免費“的服務,在最開始試了digitalpress這個免費的Ghost主機服務,有1GB的空間還可以掛Domain算是相當佛心了,可惜要付費才能使用自己的theme,對於想改改code的人來說還是有點不方便,最後我還是選擇了相對麻煩一點的Heroku。
身為老牌子的Heroku,以前我常用來跑些Bot跟Crawler這類東西。免費又簡單易用,部署上可以連結Github或者使用Heroku CLI,在當時或現在都算是好上手的雲端平台,對於玩些小應用的人來說相當方便,可以省去很多時間。
那就來說說這次使用免費Heroku首先要解決的兩個問題
- Dyno免費帳戶每個月只有450個小時
Dyno就像一個執行個體,執行Ghost需要一個Dyno來跑Web Server,如果要讓網站No future每天24小時跑,那450小時一個月是肯定不夠的,要解法的唯一辦法就只能打破“完全免費”不綁卡的概念。在綁卡後會再額外增加免費的550小時,這樣算下來一個月有免費的1000小時可以用,在只有一個Dyno的情況下能夠保持一個月的運作。 - Dyno在30分鐘內沒有任何流量系統會自動進入睡眠狀態
對於一個沒流量的blog來說,這件事會造成這個網站處於半夢半醒的狀況,就算有免費的1000小時可用,但是30分鐘內沒人來就會睡死,當有人來以後又要等20秒左右才叫的醒,相信一般人是不會等的。
這時候可以用Uptime Robot,既免費又有App,使用Https可以設定每25分鐘確認一下,除了讓網站保持清醒外還可以監控網站。
當解決上面兩件事之後就可以開始準備安裝Ghost了,這時我們還需要資料庫跟儲存照片的空間,還有註冊會員寄送認證信的需求。
這邊強烈推薦使用 one-click 一鍵安裝,免除所有設定與煩惱
雖然這些Add-ons是免費的,但是安裝還是需要綁卡。在安裝完JawsDB MySQL、Cloudinary、Mailgun後會直接設定好,接下來就可以開始使用Ghost了,不過因為Mailgun已經不是完全免費的關係,收件者也必須先通過認證才能收到信,所以如果要新增一個作者,我必須先寄Mailgun認證信後才能用Ghost Intive,這部分真的就比較麻煩一點,但是目前懶得用其他方式,就先這樣吧。
最後要說Heroku是對於現在來說是免費方便的方案,如果有一天有預算跟越來越多人看這個blog的話,那我還是會搬到VPS去。
最新更新,JawsDB MySQL免費只有5mb一下就爆了,目前轉到Always Free Oracle Cloud Free Tier。