Hexo 遷移至 Wordpress,個人部落格搬家全紀錄

本篇文章是自己將個人部落格從 Hexo 遷移至 WordPress 服務的記錄,包含

  1. Google Cloud Platform 伺服器架設 WordPress
  2. 設定 Domain
  3. Hexo 文章導入

Hexo 和 WordPress 之間的抉擇

Hexo 用了一年多,優點是網頁載入速度快、不用額外買主機(直接架在 Github Pages )、文章編輯支援 Markdown 語法。但缺點是對於沒有程式底子的人會較難去進行後續的維護(例如主題和外掛更新)、換了電腦就無法撰寫文章、在討論的人沒有那麼多,解決 bug 時要找資料找比較久。所以最近毅然決然的決定要將部落格搬家到 WordPress ,除了可以解決上述的缺點之外,還有一個很重要的點是佈景主題和外掛的豐富度大勝 Hexo 啊!

Hexo 搬家到 Wordpres 的步驟

搬家所需的步驟大概如下,如果你是想要知道怎麼用架設 WordPress 的讀者,也以看完步驟1和步驟2後直接左轉,逛逛我的其他文章。

  1. 用 Google Cloud Platform(GCP)的伺服器架設 WordPress
  2. 設定 Domain
    1. Domain 設定
    2. 增加 SSL 安全連線
  3. 導出 Hexo 的文章,並導入 Wodpress
  4. 在 WordPress 內整理文章
    1. 圖片跑掉,重新設定內容摘要部分
    2. 舊網站文章轉址

使用 GCP 伺服器架設 WordPress

如果你是第一次使用 Google Cloud Platform(本篇文章中簡稱GCP)的話,Google 會送你一年 $300 美金的免費使用金額,如果你跟我一樣是月流量不算太高的個人部落格的話,就等於你這一年都能免費使用!

建立 WordPress 的服務

我這邊是用網路上大家推薦的「WordPress with NGINX and SSL Certified by Bitnami and Automattic」(要注意有很多 WordPress 安裝服務,名字要選對),會選用這個是因為做於 Web 服務器來講, NGINX 相比 Apache 效能較好,且資源使用率較少,對服務器負擔較小。

這裡要記得選擇 asia-east1 的服務器,這個才是 Google 在台灣彰化的伺服器,訪問速度較快,然後再選擇你要的 Machine type 和 Boot Disk type 和容量,這些都會影響你的費用。建議控制在 $20 元左右,這樣可以預留 $5 美元左右的緩衝空間(免費額度$300/年 = $25/月),之後按下部署。

使用 GCP 建立 WordPress 服務

部署完畢後可以進入 Deployment Management 頁面查看自己主機的訊息,裡面有你的部落格網址,管理員帳號、密碼…等資訊。建議趕緊登入 WordPress 的管理員帳號把密碼換掉比較安全。

Deployment Management 中會列 WordPress 及主機的訊息。

將網址改成靜態 IP

前往 VPC 網路的管理介面,找到你的 VM(虛擬主機)名稱,然後在 type 欄位將 IP 改為靜態位址,避免伺服器重啟後的 IP 位置變更,別人就會找不到你的網站。

VPC 網路設定將外部 IP 改成靜態

使用 SSH 安全加密連線,遠端控制伺服器

到 Compute Engine 的管理介面,在 SSH 連接的部分選取「在瀏覽器視窗開啟」,便會開啟一個視窗版終端機可以讓你在裡面執行指令。

使用 SSH 安全加密連線控制遠端伺服器

在這邊裡面我們可以去更改 NGINX 伺服器組態設定、更改 WordPress 的網址設定…等,但首先我們要來去除惱人的 Bitnami 浮水印。

除去 Bitnami 浮水印

透過 Bitnami 服務建立的 WordPress 會有浮水印,這邊可以藉由一行簡單的指令將它去除。
sudo /opt/bitnami/apps/wordpress/bnconfig —disable_banner 1

現在可以看到你的 WordPress 網站已經完全架好了!接著就來設定網域,讓醜醜的數字 IP 網址變成精美的網址吧!

網域設定

Google Domain DNS 設置

我自己是使用 Google Domain 的服務,如果想知道怎麼申請 Google Domain 的話看參考我的這篇文章「Hexo + Github Pages:教你設定部落格的專屬網址,含網域購買教學

到 Google Domain 中選取你的網域,並至 DNS 設定中設定如下:
名稱 / 類型 / TTL / 資料
@ / A / 1h / 34.80.19.36

Google Domain 的 A 紀錄設定

這個意思是讓你的網域對應到你剛剛在 VPC 網路那邊設定的靜態 IP,以我的例子來講就是將 larrynote.com 對應到 34.80.19.36 這個 IP 位置。

要注意設定後網址要生效會需要一點時間,所以就稍微耐心等待一下。

申請 SSL 憑證,建立網站加密連線

這時候切換回前面開啟的視窗版終端機,如果已經關掉的話在 Compute Engine 那邊的 SSH 連接再開一次。

並輸入以下指令,請把下面的 example@mail.com 和 exmple.com 置換成你自己的資訊。
sudo /opt/bitnami/letsencrypt/scripts/generate-certificate.sh -m example@mail.com -d example.com

輸入後他會問你是否要以此資訊建立 SSL 憑證,也會再問你是否要自動更新 SSL 憑證,我這邊都是選擇 Y。

當建立好了之後就可以回到 WordPress 安裝 Really Simple SSL 這個外掛,並一鍵啟用 SSL,接下來你就可以看看是否自己通過以下檢測啦!

使用 Really Simple SSL 檢測自己網站的安全憑證設定

文章到這邊 WordPress 建置已經完成,接下來要講的是怎麼搬家啦!

Hexo 文章導入至 WordPress 及相關設置

產出 Hexo 的文章檔案

調整 Hexo 的 RSS 摘要格式以利 WordPress 導入,在 _config.xml 檔案中調整設定如下

feed: 
	type: rss2
	path: atom.xml
	limit: 0
	hub:	
	content: true

接著透過 hexo g 的指令來產生最新的 atom.xml 檔案。

將文章導入 WordPress

WordPress 內建有提供一個導入 RSS 的工具,由於我們剛剛使用 GCP 部署的 WordPress 是使用 PHP 7 以上的版本,所以在導入的時候會有異常。這邊可以直接把 /wp-content/plugins/rss-importer/rss-importer.php 這個路徑中發生錯誤的第 72 行程式碼直接註釋掉即可。
set_magic_quotes_runtime(0);

整理文章圖片、文字排版

由於之前用 Hexo 寫的文章內的圖片會全部跑掉,所以這邊要重新設置圖片。建議用網路圖床,避免 WordPress 肥大,這邊可以參照「Hexo 優化:新增圖片圖床、更換文章閱讀計數器服務」這篇文章,來申請網路圖床。

這邊要費的功夫最大,建議可以搭配 Yoast SEO 這個外掛來順便檢視自己的文章是否有良好的 SEO 結構。

將舊文章網址導向新文章網址

之前在 Hexo 的文章網址跟現在在 WordPress 的文章網址結構如果是不一樣的話,那麼便需要進行重新導向的動作,避免遺失掉舊有文章的流量,畢竟舊有文章網址還是能帶來一定的 SEO 流量。

我這邊是使用 Redirection 這個外掛,來將文章網址一篇篇的做 301 重新導向的動作。

使用 Ridirection 設定網站文章轉址


結論

網站搬家的過程是非常辛苦的,所以一開始選擇適合自己的產品真的很重要啊!

當然如果之後怕自己又突然不喜歡 WordPress 想換回 Hexo 的話,也可以繼續同步在 Hexo 上發表文章,雖然這樣會比較麻煩一點,但不失為一個作法!

如果你對搬家的過程有什麼疑問或是對 Hexo 或 WordPress 有什麼心得都歡迎在下方留言與我討論或分享,希望這篇文章能夠幫助到你。

參考資料

Read more

Aer Go Pack 2 超方便的旅行/筆電後背包

Aer Go Pack 2 超方便的旅行/筆電後背包

由於我在 2020 買的 incase ICON lite II 在用了 4 年後拉鏈脫軌了,然後去找修理包包的店維修他說換拉鏈要 $1000 元,就讓我想說也是該物色一顆新包包了。 incase 的這顆包包拿來當上班放筆電用或是外出時的一日包其實沒太多毛病,就只是因為維修費不便宜,加上用了太久了想說可以換個新風格。 我這次在挑選包包的時候預算大概抓在 $5000 內,並且除了看得順眼(這是必須的吧!)之外,遵循了幾個原則下去找 1. 需要可以放我的 MacBook Pro 13 吋筆電 2. 包包頂部有收納可以讓我放一些小物方便我快速拿取(AirPods Pro, 騎車時放手機) 3. YKK 拉鍊(因為這次包包壞掉是從拉鍊開始壞) 於是我就開始在網路上爬文尋找符合以上條件的包包。但不論在 PTT 或是 Mobile01,大家推的牌子不外乎就是 Incase、Targus、Samsonite 等這些常見品牌,

工作與生活之間的抉擇,自我探索中...

工作與生活之間的抉擇,自我探索中...

興趣能夠當飯吃嗎?工作可以變成興趣嗎?這一直是個大哉問,永遠可以拿來思辨的問題。 在 [[2024-10-10]] 聽了《曼報 Manny's Newsletter》的《EP83|心理摩擦力:不是你不好,是他不要》前面的閒聊在談論說 2 年前有讀者問曼尼「興趣和工作怎麼選擇」後,就對這件事有感而發。 由於自己從今年 6 月開始自己轉變爲自由工作者,跟在職場上班時的生活樣態比起來變得非常不一樣,就一直在思考工作和生活對於我的意義是什麼。 這四個月來我歷經了接案收入不如預期加上股市同期間崩跌、颱風假(第一次颱風假時心裡有點不平衡)、有人試著找我回職場上班(讓我更認真思考了現狀是不是我要的)等事件,總覺得自己好像有漸漸地找到了一個讓身心靈相對平衡的狀態。 興趣和工作,我該選哪個? 興趣可以當飯吃嗎? 以我的人生經驗來說,我認為興趣就是「你會想要主動鑽研的事情」。 當你能從某件事情中取得成就感,不論這個成就感的來源是金錢、他人稱讚、解決難題或是把清單完結等,你就會想要把這件事情持續鑽研下去。興趣就是一個這麼正向循環的存在。 所以興趣不見得能夠當飯吃,還是要取決於這個興趣有沒

Follow,不只是 RSS 閱讀器,還是目前做強大的訊息訂閱管理工具

Follow,不只是 RSS 閱讀器,還是目前做強大的訊息訂閱管理工具

不知道現在還有多少人在用 RSS 閱讀器?或是大家對於 RSS 的了解有多少? 在這個社群媒體「演算法」無所不在的年代中,RSS 閱讀器 (1) 如實的依照你的訂閱源(新聞媒體、Blog 等)發佈的所有文章按照時間順序做排序,不會因為今天我點了狗狗的貼文讚,隔天我就看到很多狗狗出現在我的動態牆上;(2) 它也不會像社群媒體一樣永遠滑不完,因為你所能看到的資訊總數跟你的訂閱源發佈的文章數量有關。 我覺得「突破同溫層」以及「數量有限」這兩個 RSS 閱讀器的優點讓我覺得非常難能可貴,這也是我持續一直在使用的問題。(在 Follow 出現前我是使用 Silvio Rizzi 開發的 Reeder Classic,也是一套非常棒的 RSS 閱讀器) 然而現在 RSS 閱讀器遇到一個很大的問題,就是很大多數的網站不再提供官方的 RSS 訂閱源,因為如果大家都透過 RSS 閱讀器瀏覽他們發佈的文章,

漢方保養品「肌本職」使用心得

漢方保養品「肌本職」使用心得

先說本篇文有一點點半葉配?因為「肌本職」這個品牌是我目前服務的客戶之一,但因為自己使用這個品牌覺得真的體驗蠻好的,加上使用了將近 2 個多月,最近跟前同事吃飯的時候他們看到我竟然說「你最近皮膚變好了耶!」雖然不確定皮膚變好是因為離開了之前壓力比較大的工作還是因為抹保養品,但我先把它當作後者的功勞吧!因為現在的工作型態也還是有壓力,所以想說可以來推薦「肌本職」這個保養品牌給大家。 初次看到肌本職的印象 第一次看到這個品牌的印象是用中草材當作保養品的基底好像蠻厲害的,尤其是產品是跟中醫師共同研發的,好像真的可以從「根本」來解決肌膚問題,因為中醫最有名的就是調理。 痘痘肌困擾選擇三黃精華 因為我自己長期有痘痘肌的困擾,所以我第一次入手的就是「三黃無酸煥膚精華」、「三黃無酸淨痘精華乳」,在這之前我都是買 Bffect 的保養品。 關於無酸類抹痘痘的保養品,依照我的認知就是可以早、晚都抹而已。使用了兩個月來,說真的早晚都有抹,痘痘感覺有好比較快,如果是比較淺的痘痘(還是粉刺?)的話通常隔天或兩天後就不見了,比想像中還厲害:但如果是深層的痘痘就真的要用比較久,也是有到現在還尚未完全好