使用 Google Cloud Launcher 快速架設 WordPress 與自訂網域

之前介紹過如何在 Openshift 平台架設 WordPress,透過 Red Hat 提供的佛心方案,可以無限制地免費使用 WordPress。雖然 Openshift 底層是 Amazon 伺服器,但因為免費版所提供的機器較差,網頁載入速度不穩,有時候會遇到伺服器短暫斷線,對於部落客來說,用戶連不上線就是個損失啊!所以這次來介紹老大哥 Google 提供的服務,告訴你如何快速架設 WordPress,在免費額度 300 美金之內,玩一年不成問題!


進入 Google Cloud Launcher

首先,先確認你已經開通 Google Cloud Platform 帳戶囉。還沒有開通的朋友,請先申請一年免費試用,只要幾個步驟,綁定信用卡與手機便完成了

1. 申請免費試用 Google Cloud Platform
2. 進入 Google Cloud Launcher

進來之後會看到 Cloud Launcher 這個漂亮的頁面,裏頭有著許多服務,舉凡應用程式、資料庫、安全服務、機器學習 API 等等,透過一個按鍵就能輕鬆部署。

cloudlauncher - 使用 Google Cloud Launcher 快速架設 WordPress 與自訂網域

一鍵安裝免去處理細節的麻煩,可是聰明的你,還是要知道背後如何架設,費用如何計算。就讓我們來看看裡頭有哪些 WordPress 服務可以使用吧,透過上方的輸入框搜尋,結果有六種 WordPress 服務耶。

cloudlauncher2 - 使用 Google Cloud Launcher 快速架設 WordPress 與自訂網域

為了能清楚說明,先整理目前的方案如下表:

名稱提供者類型主機費用(月)
WordPressGoogle Click to Deploy虛擬機器1 vCPU + 3.75 GB ram (n1-standard-1)$24.67
WordPress MultisiteGoogle Click to Deploy虛擬機器1 vCPU + 3.75 GB ram (n1-standard-1)$24.67
WordPressBitnami虛擬機器1 share vCPU + 0.6 GB ram (f1-micro)$4.28
WordPress MultisiteBitnami虛擬機器1 share vCPU + 0.6 GB ram (f1-micro)$4.28
WordPress 4Google Click to Deploy容器依據叢集大小而定
Premium WordPressWP EngineAPI 和服務

根據名稱分為普通版本與 Multisite 版本,而根據部署方式有三種類型,分別是虛擬機器、容器與 API 服務,

我們先解釋 Multisite,看字面意思就知道是多用戶版本,你可以架設多個 WordPress 網站,有點像是痞客邦那樣,安裝這個,你就變成大平台站長啦。不過通常我們自己架站也只有一個網站啦,建議安裝普通版本即可。假如未來要轉換成多用戶版,修改 WordPress 的設定檔就行了,可以很方便做切換。

接著是類型的選擇。

前四個「虛擬機器」指的是在 Google Cloud Engine (GCE) 開設虛擬機器,透過預先寫好的腳本安裝 WordPress,你可以選擇主機類型,或是做客製化的調整,根據用量估算花費。

而「容器」類型的 WordPress 底層採用的是 Google Container Engine (GKE),當你的網站流量很大,需要做負載平衡的時候,比較需要用這個。要不然他背後的機器仍然是建立在 GCE 之上,假如你只開一個虛擬機器,那倒不如直接裝在 GCE。

最後這個 WP Engine 是為了 WordPress 優化而生的主機架設空間,我們稱之為 WordPress Hosting,詳情請看這篇介紹。WP Engine 算是 GCP 的第三方夥伴,你需要到 WP Engine 註冊帳戶,費用也是透過第三方收取。

總而言之,我推薦選擇普通版 WordPress 然後直接裝在虛擬機器上,方便快速而且自定義程度高。


開始部署 WordPress

選一個你喜歡的方案吧,這裏我選擇 WordPress by Google Click to Deploy,接著點擊「在 Compute Engine 啟動」

cl wp1 - 使用 Google Cloud Launcher 快速架設 WordPress 與自訂網域

有許多選項調整:主機位置、機器、硬碟類型等等。為了提升網站速度,我選了台灣伺服器 asia-east1-a,並給他 1.7 GB 記憶體以及 20 GB SSD 硬碟。每個月不會超過 20 美金,使用一年下來還不會超過免費額度呢,是不是很棒。

cl wp2 - 使用 Google Cloud Launcher 快速架設 WordPress 與自訂網域

按下「部署」後,部署精靈便開始運作了!這個儀表板能看到目前的部署狀況

cl wp3 - 使用 Google Cloud Launcher 快速架設 WordPress 與自訂網域

很快地,你就會看到儀表板出現網站位置與帳號密碼,以及其他詳細資訊

wp cl4 - 使用 Google Cloud Launcher 快速架設 WordPress 與自訂網域

部署完成後,你拿到的是臨時密碼以及浮動 IP,記得趕快將密碼換掉,並且指定一個固定 IP,免得重新開機 IP 就換了。接著,點擊「Visit WordPress Site」能進入網站囉!

假如你要對主機進行調整,可以點擊 SSH 開啟 Cloud Shell 終端視窗。

cl wp5 - 使用 Google Cloud Launcher 快速架設 WordPress 與自訂網域


如何自訂網域

安裝好 WordPress 後,當然是要換上自己的網域名稱,可是進入後台,你會發現網址沒辦法修改 (灰色的框框)

bitnami - 使用 Google Cloud Launcher 快速架設 WordPress 與自訂網域

那麼我們要怎麼修改成自己的網域名稱呢?請參考 Bitnami 提供的做法

How To Change The WordPress Domain Name?

使用 SSH進入你的虛擬機器,用 ls 指令確認一下家目錄下有這三個資料夾:apps, htdocs, stack

bitnami 1 - 使用 Google Cloud Launcher 快速架設 WordPress 與自訂網域

接著使用透過編輯器修改文件,不會的話可以看 nano指令教學

$ sudo nano apps/wordpress/htdocs/wp-config.php

假如我的網域是 test.jerrynest.io,那麼請把原本的 WP_SITEURL 與 WP_SITE 都改過來

define('WP_SITEURL', 'http://test.jerrynest.io');
define('WP_HOME', 'http://test.jerrynest.io');

server e1502456859988 - 使用 Google Cloud Launcher 快速架設 WordPress 與自訂網域

當然,DNS 那邊也要做設定,請登入你的網域註冊商後台 (如 Gandi, Godaddy, Goggle Domain) 修改區域檔設定。請加入一筆 A Record,名稱就填你想要的 subdomain,而數值則是填寫 IP。(為了讓 DNS 快點生效,這裡 TTL 設定為 5 分鐘)

gandi - 使用 Google Cloud Launcher 快速架設 WordPress 與自訂網域

稍等一會兒,我們就能成功連上網站啦

wordpress test - 使用 Google Cloud Launcher 快速架設 WordPress 與自訂網域


WordPress Multisite 如何自訂網域?

前面的做法適用於普通版的 WordPress,假如你架設的是多站式 WordPress,那麼在設定檔中會找不到 WP_SITEURL 與 WP_SITE 這兩個變數,因此請參考 Bitnami 的 這篇教學,以下我就稍微說明一下

同樣使用 SSH 連進主機後,請移動到 WordPress 安裝目錄,並執行 bnconfig 去修改主機名稱

cd apps/wordpress
sudo ./bnconfig --machine_hostname test.jerrynest.io

設定完成後,記得 DNS 那邊也要加入 A Record 唷

Jerry
Jerry

樂於分享的軟體工程師,曾在新創與大型科技公司實習,獲得黑客松競賽冠軍,擔任資安研討會講者。長期熱衷於資訊安全、雲端服務、網路行銷等領域,希望將科技知識分享給更多人。內容轉載請來信:jlee58tw@gmail.com

32 則留言

    • Hi Tony,

      你選的這個應該是會有才對,我前幾天測試都正常耶
      不知道是不是開錯檔案?

    • Tony 您好
      請問您安裝的是 Multisite WordPress 嗎? 單站版的應該會有才對

  1. 謝謝Jerry大,

    您的意思是,如果我不是買google的網域,並不是一定要處理cloud DNS是嗎?(抱歉我真的新手)我是在捕夢網買的網域。跟著操作您提到的SSH,可是他裡面沒有WP_SITEURL也沒有WP_SITE。於是我自己新增了兩條。但是都沒有work。Orz

    另外,我是使用bitnami的multisite,我開了兩個網站,一個是用google生成的IP,一個我在前面加了前置字test。變成”test.IP”。但不知道為什麼,現在主要的IP打開反而變成error500,反而有加test的可以打開。

    可是我申請的網域那邊,並不能用test.IP這個方式來當作IP,但我在Wordpress也改不掉這個了,ㄧ改也是連不上⋯⋯

    我總整理一下問題:
    1. 我購買的網域無法成功啟用,即使操作了ssh
    2. 我的multisite其中一個網站無法進行訪視,但我不知道發生什麼事了
    3. 我的multisite子網站之前用了 類似test.123.234.234 這樣的名字,現在我想改成純數字也沒辦法,一改就看不到網頁。不知道是不是因為我動到了原本IP的設定?google cloud DNS? 還是ssh改錯?

    事情變得很複雜,但我找不到任何解法,還希望可以得到您的幫助 Orz

    • Hi Emma.

      因為你已經在捕夢網購買網域,他本身就會幫你管 DNS,直接在那邊加入 A Record 做設定就行了。如果你想要 Google 幫你管理 DNS,那麼才要設定 cloud DNS,通常大家考量的會是速度與價錢,但我覺得自架站不會差太多啦,不用去設定 XD

      再來就是 multisite 的做法與單一網站不一樣,我剛剛已經更新文章,你可以參考看看
      網域搞定之後,或許第三個問題就解決了

      祝你順利啦~

  2. 你好,想請教個問題,關於更換域名的步驟中【使用 SSH進入你的虛擬機器,用 ls指令確認一下加目錄下有這三個資料夾:apps, htdocs, stack】這邊我進入SSH裡輸入ls 都不會有任何的反應,也沒有上述的三個資料夾,是我在哪個步驟出錯了嗎?謝謝

    • KK 您好

      請問你安裝的是 Bitnami 提供的 WordPress 嗎?
      我剛剛測試是有的耶

  3. 大大
    請問”DNS 那邊也要做設定 (為了讓 DNS 快點生效,這裡 TTL 設定為 5 分鐘)”
    這是在哪邊呢?

    感謝

    • Hi, Emma

      這邊是說要在網域註冊商的頁面做 DNS 設定唷

      如果沒有網域又想要購買的話,可以試試 Google Domain
      或是其他註冊商.例如 Gandi, GoDaddy

  4. 您好,請問在最後面的部分,打開使用 SSH進入虛擬機器後,要輸入什麼,才有辦法修改apps/wordpress/htdocs/wp-config.php設定文件呀? 謝謝!

    • 我更新文章囉, 用nano應該比較容易, 試試看囉
      sudo nano apps/wordpress/htdocs/wp-config.php

    • 我後來終於可以改了,但反而改了之後,無法登入wordpress(連從gcp的網址連過去都不行),改回去才能登入,怎麼會這樣呀? 不好意思,這是我第一次用,問題有點多,謝謝 😛

    • 你是說改了之後連原本的IP 都不行嗎?是看得到東西,但layout 跑掉,還是直接500 error

      另外, 你確定DNS 有設定對嗎😊

    • 它是直接404 error。

      老實說我也不確定我DNS有沒有設定對 😛 我是用google domain買網域的,我就直接在它DNS選項裡面的Registered hosts加上我的IP位址(它上面寫說這是glue records,就不用設定DNS了,如果我理解沒錯的話);
      本來我想照著網路上教的加A標記和CNAME,但不知道為什麼在google
      domain加A標記的時候它說Record already in use。

      還是我應該要在google cloud platform也設定DNS?

    • 這樣看來是DNS 設定上的問題
      Already in use 應該是有預設值
      所以沒辦法新增, 先試試看有沒有能修改的選項

      我有空試試Google domain
      再告訴你xdd

      祝你順利啦

Emma 發表迴響取消回覆