期許一生都能秉持小王子的胸懷,再平凡不過的小事都有些許的感動與幸福,希望能繼續保有古靈精怪的思維,讓每個今天都是最好的一天。
《題外話》WordPress網站架設心路歷程:2023年從GCP(Google Cloud Platform)搬家到A2 Hosting 主機|網站搬家、SSH連線、DNS設定、SSL憑證As is and To be
《題外話》WordPress網站架設心路歷程:2023年從GCP(Google Cloud Platform)搬家到A2 Hosting 主機|網站搬家、SSH連線、DNS設定、SSL憑證As is and To be

《題外話》WordPress網站架設心路歷程:2023年從GCP(Google Cloud Platform)搬家到A2 Hosting 主機|網站搬家、SSH連線、DNS設定、SSL憑證As is and To be

這篇題外話主要是要和大家分享為什麼決定搬離GCP(Google Cloud Platform)、然後選擇A2 Hosting、申請搬家後所花費的時間,以及分享無程式背景的我到底多崩潰,實在非常感謝所有協助我處理網站碰到問題的高手們,希望能讓更多跟我一樣煩惱、不知所措,每篇架設網站文章都要研究很久的新手們,能夠安心且順利完成搬家與架站。

故事有點長(我會盡量長話短說),要從一開始設立這個網站開始,當年我預計2020年出國,於是2019年年末便開始架設網站,然而隔年3月COVID-19疫情大爆發,鎖國影響了我出國計畫,心情沮喪的我決定投入會計師考試、放任網站不管許久(我是真的懶惰更新),直到去年2022年底,才又覺得沒有被記錄下來的故事一不小心被遺忘,就沒有了很可惜,重新開始繼續寫、也要求自己不偷懶、盡量每週都要記錄,初心一直沒有變(其餘想法請詳關於),希望能在這裡記錄下一些不會消失的文字,記錄我的過去、現在。

一開始架站時,我是選擇使用GCP做為主機、網域則在Godaddy購買,主要是參考這篇鬍子科技學院的文章:鬍子科技學院:WORDPRESS教學課程2023 1小時就學會架站當年名稱為Wordpress教學全攻略2019 – 15個課程(不斷更新…) | 鬍子科技學院),裡頭步驟介紹非常詳細,因為架站看起來實在太太太複雜、我看不太懂專業術語還有別人介紹的步驟、所以選擇了非常淺顯易懂的分享,加上Google Cloud Platform第一年有US$300免費使用扣打(等於費用全免),使用它最平的機器,每個月約US$7,想說第一年先試試,之後再決定是否續用應該還好。

▲真心推薦:A2 Hosting(推薦使用!!!)

的確!前兩年沒有太多問題,每年要負擔的費用非常少(底下會列出來給大家參考),問題發生在去年2022年底重新再整理網站後,很頻繁發表文章完一兩天出現「No healthy upstream」,後來請教我工程師朋友,請他協助幫我解決問題,將我從機房位於美國調整至亞洲、機房也升級(價格也瞬間變貴十倍)、從每個月NT$100增加到NT$1,000左右,但我網站只有發文、上傳圖片,也沒有太難的設定像商店交易等,這個價位真的偏高太多了,原本想說算了,結果就在前兩週我的GCP開始出現大異常!!!之前我的GCP VM執行個體當機時,我得將機台按停止STOP再按START重啟、再進入SSH輸入指令(如下三行指令碼)才可以恢復運行,但這回按了停止後重啟跳出了unavailable zone,顯示沒有可用區、且遲遲不讓我啟動,必須得等到隔天或後天才能重新開始,上網查了一下,據說這是因為google超賣才導致出現這種現象,而且這樣的情況反覆發生了一週沒有改善,我也找不到人解決,這就是為什麼多方評估後我想把主機搬到A2 Hosting維護。

  • 一直不知道可以問誰協助解決問題:太容易當機、時常斷線,找不到客服、發信後就像石沉大海永遠沒有回音
  • 維護耗時費力:常常得進SSH下指令操作(也很怕下錯指令)。
  • 網站不穩且跑得慢:速度即便已經改到亞洲,每次還是會要求我多加錢,提升效能。
  • 主機對於網站沒收入的我來說價格太貴:市面上多數主機提供商已把cPanel列為標準,且沒有標配cPanel。
cd /opt/bitnami/
sudo service nginx stop
sudo ./ctlscript.sh start

補充:
1.網站會出現「No healthy upstream」有很多原因,可能是機器服務沒有運行、運行出現錯誤、DNS服務出錯、本機hosting文件錯誤等,要找出原因來非常不易。
2. cd /opt/bitnami/代表它的位置、sudo service nginx stop停止運行、sudo ./ctlscript.sh start啟動。

無可用區(圖片來源:自己)
202210-202305 GCP費用(圖片來源:自己)

原本As is:
我的網域名稱(Domain):Godaddy購買(剛使用前兩年優惠NT$680、再續約兩年NT$1,163)、DNS代管服務
我的主機(Hosting):GCP(Google Cloud Platform)、免費SSL憑證

補充:
1.網域名稱簡稱「網域」或「域名」,而IP位址則是網路世界裡的地址,但IP通常是一連串數字很難記憶,舉例來說就像聯絡人名稱對應手機號碼,因此為了方便使用者無須再記憶IP位址,延伸透過輸入網域來找網站。
2.的作用就是將輸入網址(網域)與網站主機所在的IP做配對。

現在To be:
我的網域名稱(Domain):一樣維持Godaddy無異動
我的主機(Hosting):A2 Hosting(最大的優點是:能夠請教A2 Hosting主機的客服協助搬遷網站)、DNS代管服務、免費SSL憑證

年度20202021-20222023 (As is)2023 (To be)
網域名稱(Domain)Godaddy
NT$340/Y
Godaddy
NT$340/Y
Godaddy
NT$580/Y
Godaddy
NT$580/Y
主機(Hosting)GCP micro VM
有US$300免費使用扣打NT$0
GCP micro VM
NT$130/M
GCP
f1 micro VM NT$1,000/M
A2 Hosting
我先選擇1年
Startup方案 US$2.99/M
每年費用總計NT$340/Y
(NT$28/M)
NT$2,140/Y
(NT$178/M)
NT$12,580/Y
(NT$1,048/M)
NT$1,657/Y
(NT$138/M)

我的網站從A2 Hosting選好Startup方案並且付費之後(Startup方案很多功能都有支援,但還是建議大家以個人需求為主),請A2 Hosting主機客服協助搬遷網站,只花了兩天的時間就完成整個搬遷以及DNS這些設定了,這邊我就不多介紹步驟,請主機商搬家主要是參考這篇Angel Space的文章:將WordPress網站搬家,從GCP平台搬到A2 Hosting主機,也有很多人寫過相關文章也都蠻有幫助的。

接下來再和大家分享搬遷時我遇到的三個問題,A2 Hosting Migration Specialist 是如何感人、有耐心又有效率地協助處理問題:
1. 搬遷時需要提供原有主機權限請A2 Hosting協助搬家,但因GCP沒有cPanel、我也不知FTP是什麼,更不知SSH權限的帳號密碼是什麼(我以往都是直接按瀏覽器點進去),於是我得申請連線SSH Key的公私鑰。
2. 移轉成功後DNS設定,我不確定舊服務顯示是否正確。
3. SSL憑證需要重新申請,幸運的是A2 Hosting有送SSL憑證,但A2 Hosting cPanel上AutoSSL顯示出現異常。

補充:
1.SSH key是一種加密連接通訊協定,為了避免遭受暴力密碼破解攻擊,建議 SSH連線至 VM 時都透過SSH key。

2.SSL憑證是用來加密網站資料的標準工具,其中兩大用途:保護傳輸資料、驗證您的身份,通常會建議所有網站都啟用 HTTPS 加密。

A2 Hosting ticket(圖片來源:自己)

1. 搬遷時需要提供原有主機權限請A2 Hosting協助搬家,但因GCP沒有cPanel、我也不知FTP是什麼,更不知SSH權限的帳號密碼是什麼(我以往都是直接按瀏覽器點進去),於是我得申請連線SSH Key的公私鑰。

如何申請SSH Key的公鑰及私鑰?這個步驟我實在太無頭緒了,結果光在這裡就耗了快一天,這邊推薦大家,我主要是參考這篇辛比誌的文章:[教學] 產生SSH Key並且透過KEY進行免密碼登入

GCP SSH Hostname: wordpress-vm-1
GCP SSH Port: tcp:22,並提供GCP外部IP位址
GCP SSH Username: Your account ID
GCP SSH Password: SSH Key

(1) 首先,請先點進入SSH輸入指令來產生 key:

ssh-keygen

(2) 接著,它會詢問產生ssh key要存放的位置,不異動就enter空白跳下一行:

Generating public/private rsa key pair.
Enter file in which to save the key (/home/username/.ssh/id_rsa):

(3) 然後會再詢問要不要設定密碼passphrase,一樣enter空白不設定跳下一行:

Enter passphrase (empty for no passphrase):
Enter same passphrase again:

(4) 最後,就會產生key到指定位置,分別有兩個key:沒有副檔名的為私鑰,.pub則為公鑰。

Output
Your identification has been saved in /home/.ssh/id_rsa
Your public key has been saved in /home/.ssh/id_rsa.pub

(5) 問題來了!到底是要如何找到這兩個公私鑰?這裡我也找好久,請再分別輸入以下指令取得私鑰、公鑰,就可以提供給A2 Hosting Migration Specialist 了,這邊我是再參考這篇Brian Boucheron在DigitalOcean的文章:How to Set Up SSH Keys on Ubuntu 20.04

cat ~/.ssh/id_rsa
cat ~/.ssh/id_rsa.pub

2. 移轉成功後DNS設定,我不確定舊服務顯示是否正確。

移轉成功後,我需要將舊的GCP服務名稱服務器刪掉指向新的A2 Hosting名稱服務器,但問題來了!我一從Godaddy刪掉並指向A2 Hosting便會顯示「您的名稱伺服器不是由我們託管,我們無法顯示您的DNS資料,」接著無法編輯後,我嚇到又改了回來;這邊請放心的改吧各位!可以忽略這則通知,因為一旦名稱服務器更改為A2 Hosting,便可以在cPanel裡DNS檢視設定(搬遷時有幫你設定好了)。

Godaddy DNS顯示(圖片來源:自己)
A2 Hosting回覆SSL憑證、並跟我講目前DNS狀況(圖片來源:自己)
A2 Hosting回覆可以在cPanel裡DNS檢視設定(圖片來源:自己)

3. SSL憑證需要重新申請,幸運的是A2 Hosting有送SSL憑證,但A2 Hosting cPanel上AutoSSL顯示出現異常。

A2 Hosting搬遷過來後會自動套用AutoSSL憑證,但問題來了!我這邊跑了幾個小時,再參考這篇造九頑五的文章:速度勝Bluehost?A2 Hosting架設WordPress教學(2023),其中他有提到A2 Hosting SSL 無法成功安裝、Https 憑證設定失敗怎麼辦?我決定發Ticket再去詢問(這邊也可以詢問Migration Specialist):I would like to ask my SSL has been showing “An error occurred”, I am not sure whether there is a problem with the operation, or just moved, please help to confirm , is there any cPenl SSL or let’s encrypt SSL? thank you!

A2 Hosting AutoSSL出現異常(圖片來源:自己)

當再次得到A2 Hosting的回覆時,我的SSL憑證就沒問題了!

A2 Hosting回覆SSL憑證(圖片來源:自己)

最後要再次感嘆 A2 Hosting 24小時客服回覆,也很感謝A2 Hosting的免費搬家服務,先前在查詢文章時,已經有很多人讚嘆,過程中會更加感謝與敬佩他們的專業與速度,真的是會給滿分!每封確認資料細節的郵件往返,都非常有效率且耐心講解;最後,建議A2 Hosting 移轉成功後,可以再點擊看看是否所有的頁面功能都正常、做些測試,但也不用害怕,如果出了什麼問題,客服隨時在線,可以詢問解惑,實在是太棒了!也推薦給大家!

A2 Hosting回覆有提供免費搬遷(圖片來源:自己)

發表迴響

error: Content is protected !!