架設網站的步驟其實非常容易,概念也淺顯易懂,但是細節卻有點小複雜。整個教學系列是使用 WordPress Bitnami 把網站架設在 Google Cloud Platform (GCP) 伺服器上。架設網站可以歸納為八個步驟:
在 GCP 上佈署 WordPress Bitnami (教學一) → 安裝 gcloud SDK (教學二) → 架設 FTP (教學二) → 更改預設密碼 (教學三) → 設定靜態 IP (教學三) → 設定 Domain Name (教學四) → 設定 SSL 加密連線 (教學五) → 建立子主題修改網站外觀樣式 (教學七)
本篇作為一個目錄將所有的 WordPress 教學文章整理起來,方便讀者直接參考需要的文章。
WordPress 快速架站指南
如果讀者已經熟悉 Linux Debian 指令、Apache 伺服器參數設定、WordPress Bitnami 結構等,或是想直接快速上手,可以直接參考 WordPress 快速架站指南。
▍快速架站指南
WordPress / 快速架站教學:在 Google Cloud (GCP) 台灣主機上免費架設 WordPress Bitnami
這是篇濃縮版的 WordPress 架站教學,省去了過多的背景知識說明,直接列舉所有指令、參數、設定步驟。跟著教學步驟一個一個來,10 分鐘就可以架好一個 WordPress 網站,並設定好伺服器參數及 FTP server。
WordPress 架站教學
如果讀者想完整的了解 WordPress Bitnami 的架站過程及細節,可以參考這一系列文章。這一教學系列共有七篇,從在 GCP 上部署 WordPress Bitnami,到伺服器參數設定、網站外觀樣式調整都有詳細的解說。
▍第一章:在 Google Cloud (GCP) 上部署 WordPress Bitnami
WordPress / 架站教學一:使用 Google 台灣主機免費架設自己的網站 (Mac/Win版)
本篇從建立 Google Cloud 帳號開始,一個步驟一個步驟的帶你建立好自己的伺服器,目前 Google Cloud 有提供一年 300 美金的免費使用額度可以用。跟著這篇教學完成,最初始的 WordPress 網站就可以被架設出來了。簡單吧!
▍第二章:安裝 Google Cloud SDK 遠端控制伺服器,並架設 FTP Server
WordPress / 架站教學二:透過 SSH 連線遠端控制 GCP 並架設 FTP 伺服器 (使用 WordPress Bitnami)
接著必須安裝 Google Cloud SDK (gcloud) 才能利用 SSH 連線遠端控制我們的伺服器,我們的伺服器是架設在 Google Cloud 的伺服器上,他是一個虛擬機器實體 (instance)。Google Cloud 的伺服器就像是一台大型的電腦,裡面用軟體的方式模擬出一台一台小電腦,稱作虛擬機器。因為是虛擬的,我們得用遠端連線的方式控制它,gcloud SDK 就是在做 SSH 連線這件事。當然也可以用第三方軟體進行連線,不過既然 Google 有提供 SDK,我們就直接使用他的也比較安全快速吧。
在進行任何網站的修改之前,我們會先架設 FTP Server 讓我們能利用 FTP 軟體直接管理我們伺服器上的檔案。在後面的步驟當中會對伺服器上的檔案做修改,例如建立子主題 (chile theme)、修改網站 PHP 程式,甚至抽換伺服器參數檔等等。用 FTP 來管理檔案會比較快速、方便。
▍第三章:更改系統預設密碼、設定外部靜態 IP
WordPress / 架站教學三:更改 MySQL Administrator 密碼、設定外部靜態 IP 位址
這是一個簡單卻重要的步驟,我們使用 WordPress Bitnami 部署我們的伺服器時,系統會隨機生成一個預設的密碼,這組密碼會顯示在 GCP 上的面板 (Administrator Password)。這組密碼會使用在 WordPress 網站預設帳號的密碼,網站的預設帳號則是 user。同時這組密碼也是資料庫的 root password 密碼,因為安全性的關係,我們當然要把這兩組密碼都改掉。
此外,在我們部署虛擬機器時,GCP 會指定一個動態的 IP 位址給我們的伺服器。所謂動態,就是因為如果我們重啟了伺服器,GCP 就會另外指定一個新的 IP 位址給我們。但如果我們的網站已經穩定上線了,隨時更動的 IP 位址顯然就不太合適了。尤其如果我們有指定 Domain Name 網址給伺服器,那更是不可能一天到晚設定 DNS。所以,將外部 IP 位址改成靜態的也是非常重要的步驟。
▍第四章:設定 Domain Name,給網站一個固定的網址
WordPress / 架站教學四:設定 Domain Name 及 Apache 參數 (單一WordPress)
上一個步驟設定的 IP 位址,就是伺服器的位址,也是網站的網址。但總不可能一直用一長串難記沒有規則的數字吧,所以我們會指定一個 Domain Name 給我們的伺服器。通常 Domain Name 是要付費註冊的,不過也不貴,一般的網址一年大約 10~15 美金左右,打折的話更是 5~10 美金就有了,我會建議想要經營自己網站的讀者都去註冊一組屬於自己的網址。
指定 Domain Name 及網站的網址是關於設定 Apache 伺服器參數及 WordPress 資料庫的動作,在此篇教學當中略顯複雜。不過多數都只是參數上的設定,只需修改參數檔文字即可,操作上不算太難,只是一個錯誤可能就會造成網站無法訪問。本篇教學幫大家完整的整理 WordPress Bitnami 和 Bitnami Apache Server 的參數設定、伺服器結構及檔案位置等,只需照著步驟來就可以完成 Domain Name 的設定。
▍第五章:設定 SSL 加密連線 (https)
WordPress / 架站教學五:設定 SSL 加密連線,讓網站連線更安全 (以Apache為例)
SSL 連線已經變成現今網站的必要設定之一,由於傳統 http 設計上的缺陷,為了解決安全性的問題衍生而出的 SSL 連線,是網站伺服器與使用者瀏覽網站之間的加密協定。你或許常見過一些網站的網址是 https 開頭,這就表示你與這個網站之間有經過 SSL 連線之後的安全性認證。
設定 SSL 連線主要要先和 CA (Certification Authority,憑證簽發機構) 申請 SSL 憑證,再將憑證傳到伺服器上。接著設定好 Apache 參數,讓使用者與伺服器連線時都透過 https 連線。傳統的 SSL 憑證都是需要付費的服務,不過 Let’s Encrypt 提供了免費的憑證簽發服務,如果讀者沒有商業或更嚴格的安全性考量,個人或小型組織的網站使用 Let’s Encrypt 簽發的憑證就已足夠,本篇教學就是利用指令申請 Let’s Encrypt 的憑證,並設定好 Apache 參數,最後在設定週期性的自動更新憑證。
▍第六章:了解伺服器的檔案目錄結構及存取權限
WordPress / 架站教學六:檔案及目錄的結構簡介與預設檔案權限
如果讀者只是想要架設一個最簡單的 WordPress 網站,那麼本篇教學算是選讀的內容。因為依照預設的狀態就以足夠運行一個基本的 WordPress 網站,本篇不會做到任何額外的設定。
那為什麼還是要寫這篇教學呢?首先,因為我們在經過一連串繁雜的伺服器設定後,極有可能去更動到伺服器上的任何檔案目錄權限設定,經常我們在設定完網站之後就會發現網站直接無法訪問了!不過別擔心,只要伺服器上的資料沒有毀損,通常只是權限設定的問題。所以本篇教學告訴大家網站的檔案目錄權限設定,使用正確的權限才能讓網站正常且安全的運作。
另外如果我們要做更複雜的伺服器參數設定,能了解網站的檔案結構是非常有助益的。像是我們下一章要對網站的外觀樣式做調整,我們就必須知道佈景主題是存放在 ./wordpress/htdocs/wp-content/themes/
當中,且主題間是各自獨立存放,而主題內又有 style.css、functions.php 等重要檔案。如果我們要設定網站 Domain Name 或其他 Virtual Host 設定,又必須知道 WordPress 的參數存放在 ./wordpress/conf/
底下。
所以雖然本篇教學沒有太多實際對伺服器的修改或設定,但卻是一篇重要的筆記,在需要的時候就會用到。
▍第七章:修改網站的外觀樣式,建立子主題 (chile theme)
WordPress / 架站教學七:修改網站外觀樣式,如何建立子主題 (child theme)
最後一篇教學是關於修改網站的外觀樣式。我們架設好自己的網站之後,肯定想要把它佈置成自己想要的樣子。最簡單的方式當然可以直接到 WordPress 的後台直接套用現成的佈景主題 (theme),本篇沒有打算教你如何從零建立一個佈景主題,那牽涉到的層面實在太過龐雜,必須了解整個 WordPress 的網站結構、熟悉 PHP 程式的撰寫、熟悉 CSS 與 HTML 語法以及整個 WordPress Bitnami 伺服器的相關檔案結構的都要有所了解。再者這還只是工程面的部分,還有配色、平面設計等等諸多層面要考慮。
我們可以選擇站在巨人的肩膀上就好,先套用現有的佈景主題,在建立一個屬於我們自己的子主題 (chile theme),將外觀樣式修改成自己想要的樣子。本篇教學就是稍微說明一下佈景主題的檔案結構,再告訴你怎麼樣建立一個子主題套用到網站上。
WordPress 多重架站教學
前面說明了如何在 GCP 上架設 WordPress 網站,但如果想要在同一個伺服器上架設第二個甚至更多個呢?WordPress 本身有提供 Multisite 的版本可以建立多個子網站,不過那對多數人來說並不是一個好選擇,在第一篇教學有稍微說明了一下原因。筆者這邊比較推薦的是使用 Multiple WordPress 的方式,也就是架設多個 WP 但網站間是各自獨立的實體。基本的架站與上面 Single WordPress 的架設並沒有不同,差異只是在需要額外的安裝 WordPress,並有相對稍微複雜一點點的 Apache 伺服器參數設定。
▍第一章:Multiple WordPress 多重架站
WordPress / 多重架站一:如何在同一個伺服器架設第二個 WordPress (Multiple WordPress,以 Bitnami 版本為例)
本篇教學先稍微比較一下 Multiple WordPress 和 Multisite WordPress 的不同,如果讀者想要在同一個伺服器上架設第二個甚至更多個 WordPress 網站,我會比較建議使用 Multiple WordPress 的方式架設。
接著本篇也會教大家怎麼正確地透過 FTP 和 SSH 指令安裝 WordPress 在我們原本的 GCP 伺服器上。
▍第二章:設定 Domain Name
WordPress / 多重架站二:設定 Domain Name,指定多個 WordPress 的網址 (使用subdomain)
由於 WordPress 的設定與前面的架站教學並沒有太多差異,所以多重架站教學就不再重述一遍,讀者可以回頭參考前面的文章。但由於多重架站會牽涉到較複雜的 Apache 參數設定,給定各網站獨立的 Domain Name、取消 Bitnami 的 prefix 模式等等,我在本篇教學整理好我自己所有的筆記,將所有的參數設定及伺服器結構完整的整理給大家。
▍第三章:設定 SSL 加密連線
WordPress / 多重架站三:設定 SSL 加密連線 (以 Apache 為例)
同樣的,多個網站的 SSL 連線與單一 WordPress 並沒有太大的不同,差異只在要記得多申請幾個 SSL 憑證。如果讀者有讀過前面單一網站的 SSL 設定教學,就會發現內容不會差太多,但因為 SSL 連線是一項重要的設定,而且因為多個網站造成伺服器的參數設定變得疊床架屋,我還是另外寫一篇專為 Multiple WordPress 的 SSL 設定教學。
WordPress 搬家教學
如果讀者看完本系列教學文章,成功在 GCP 上建立了新的 WordPress 網站,想將原本的網站原封不動地搬到 GCP 上。或者讀者有將網站轉換伺服器的需求,都需要幫網站搬家。
網站搬家是一間非常繁雜的事情,因為這牽涉到新的伺服器的環境設定可能改變、資料庫的搬遷、網站結構的變更、檔案及程式的搬移等等。好在的是有些現有的套件可以幫我們完成這件事,輕輕鬆鬆地幫我們網站搬家。
▍輕鬆搬遷整個網站,原封不動的移轉到新的伺服器
WordPress / 搬家教學:一個按鍵幫網站搬家,使用 All-in-One Migration
目前有幾個幫網站搬家的套件可以直接使用,多數都是付費的軟體。本篇使用的 All-in-One Migration 也是,不過它在 512MB 以下的網站是免費的!讀者當然也可以自己手動的搬遷網站的檔案與資料庫,不過那真的很煩雜,我實在很懶。😆
其他常見的 WordPress 網站設定或疑難排解
本系列教學對於 WordPress 架站有完整的解說,不過在架設網站當中我們常常遇到一些奇怪又難以排除的狀況。又或者有一些常見對於網站的設定,筆者我也有整理一些筆記放在網站上。這裡就只是把我網站上與 WordPress 相關的文章列舉在這邊,方便大家直接參考需要的文章。
▍WordPress 相關文章
- 如何移除 Bitnami Info Page Banner
https://note.charlestw.com/remove-bitnami-icon/
▍WordPress 伺服器相關設定
- 如何重啟 WordPress Bitnami 伺服器服務?
重啟 Apache、MySQL、PHP-FPM
https://note.charlestw.com/restart-wp-bitnami-services/
▍Linux 相關教學
▍WordPress 疑難排解
- WordPress 網站錯誤:Update Failed: Could not create directory.
https://note.charlestw.com/wp-error-connot-create-directory/
WordPress 網站架設與搬家教學系列
WordPress 快速架站教學 (濃縮版):
在 Google Cloud (GCP) 台灣主機上免費架設 WordPress Bitnami
WP 架站教學一:使用 Google 台灣主機免費架設自己的網站 (Mac/Win版)
WP 架站教學二:透過 SSH 連線遠端控制 GCP 並設定 FTP 伺服器 (使用 WordPress Bitnami)
WP 架站教學三:更改 MySQL Administrator 密碼、設定外部靜態 IP 位址
WP 架站教學四:設定 Domain Name 及 Apache 參數
WP 架站教學五:設定 SSL 加密連線,讓網站連線更安全 (以Apache為例)
WP 架站教學六:WordPress 檔案及目錄的結構簡介與預設檔案權限
WP 架站教學七:修改網站外觀樣式,如何建立子主題 (child theme)
WP 多重架站一:如何在同一個伺服器架設第二個 WordPress (Multiple WordPress)
WP 多重架站二:設定 Domain Name,指定多個 WordPress 的網址 (使用subdomain)
WP 多重架站三:設定 SSL 加密連線 (以 Apache 為例)
WP 搬家教學:一個按鍵幫網站搬家,使用 All-in-One Migration
WordPress / 網站架設與搬家教學系列簡介及目錄
https://note.charlestw.com/wordpress-tutorial-category/
Copyright announcement:
the featured image: Photo by Domenico Loia on Unsplash