朋友的 WordPress 網站是五年前幫他架設在 AWS EC2 上,這五年來沒有特別的維護與升級,終於(?)在今年的一月被駭客入侵,網站出現一大堆亂七八糟的帳號和色情文章。於是開始拯救與升級 legacy 架構的挑戰,此篇分享整個遷移和升級過程,大家一起來看看吧!
Share:
朋友的 WordPress 網站是五年前幫他架設在 AWS EC2 上,這五年來沒有特別的維護與升級,終於(?)在今年的一月被駭客入侵,網站出現一大堆亂七八糟的帳號和色情文章。於是開始拯救與升級 legacy 架構的挑戰,此篇分享整個遷移和升級過程,大家一起來看看吧!
在 0元用 SBC 架設自己的 WordPress 網站 #3 速度優化 中提到使用 Cloudflare 做 cache,並安裝 WP Cloudflare Super Page Cache 外掛,讓他在發布新文章的時候自動做 preload。
但這個套件是透過 WordPress 主機所在位址對 Cloudflare 做 curl,因此 cache 並沒有發佈到全世界,於是我想到利用 AWS lambda 來實現。以下就來看看如何操作!
以目前我使用的 banana pi m2 plus,老實說跑 php 效能不怎樣,一個頁面可能要花個 1 ~ 2 秒才能 render 出來。外加 WordPress 的垢病就是對 SEO 沒有做預設優化。如何在先天不足的情況下去優化他是一個極大的挑戰,就讓我們一步步試試吧!
基本的 Armbian 系統和 WordPress 架設完畢後,下一步要架設 nginx 處理對外的 https 連線。
因為我們的目標是零元架設,所以採用免費的 ssl 簽證,效期只有三個月,需要額外使用 cronjob trigger script 來自動更換簽證。
此外,防火牆也是很重要的設定,我們使用 ufw 來設定連入規則,避免 ssh 被不肖人士暴力嘗試。那就讓我們開始吧!
一般人架設 WordPress 會買虛擬主機來架設,一方面簡單,一方面不需要自己管理機器,只要專注在內容上。但這次架設自己的 WordPress ,我打算挑戰使用 SBC ,看看能不能在最低的成本下,建立起可用的網站。
需注意的是,使用這個方法建立需要相當熟悉 linux 與 WordPress 、Docker,初學者還是建議使用虛擬主機比較不會有問題哦!
J
雖然大學唸的是生物,但持著興趣與熱情自學,畢業後轉戰硬體工程師,與宅宅工程師們一起過著沒日沒夜的生活。之後憑著一股傻勁與朋友創業,再度轉戰軟體工程師,一手扛起前後端、雙平台 app 開發,過程中雖跌跌撞撞,卻也累計不少經驗。
可惜不是那 1% 的成功人士,於是加入其他成功人士的新創公司,專職開發後端。沒想到卻在採前人坑的過程中,拓寬了眼界,得到了深層的領悟。...more