如何使用 Herd 在本機架設 WordPress 網站

Feature image for 如何使用 Herd 在本機架設 WordPress 網站

Herd 是一個專為 macOS 開發的本地應用程序,使用 Swift 編寫。它是一個專門用於 Laravel 開發的一鍵式 PHP 開發環境,擁有零依賴和高效能。Herd 使用靜態二進制文件,包括 PHP、nginx 和 dnsmasq,使其成為其他 PHP 開發環境之中最快的一個。使用 Herd,你可以立即享受到更快速的測試和開發網站。

Herd 的主要特色:

對於現有的 Laravel Valet 用戶,Herd 能自動遷移你的 Valet 設定,讓你能夠無縫轉換而不中斷工作。你也可以透過其直觀的用戶界面輕鬆管理 Herd 的配置,包括已安裝的 PHP 版本和 SSL 證書。

最重要的是,Herd 內建了多個 PHP 版本(從 7.4 到 8.3),並且允許你在這些版本之間快速切換。Herd 甚至允許你將特定網站固定到特定的 PHP 版本,這對於需要測試不同 PHP 版本相容性的開發者來說非常方便。

總之,Herd 是一個在 macOS 上的強大、高效,並且易於使用的工具。無論你是要開發 Laravel 應用程式,還是要架設 WordPress 網站,Herd 都能提供一個快速且穩定的開發環境。

使用 Herd 在本機架設 WordPress 網站

使用 Herd 在本機架設 WordPress 網站非常簡單,只需要三個主要步驟:準備開發工具、安裝資料庫管理工具和資料庫,以及安裝 WordPress。接下來我們將逐步說明每個步驟。

步驟一:準備 Herd 開發工具

首先,我們需要安裝 Herd。如果你已經安裝了 Homebrew,可以使用以下指令來安裝:

brew install --cask herd

安裝完成後,啟動 Herd 應用程式,它會自動在背景運行,為你提供 PHP 開發環境。

詳細安裝方式請參考文章:Herd 實用教學:PHP 網站開發者的利器

步驟二:安裝資料庫管理工具和資料庫

WordPress 需要資料庫來儲存內容、設定和使用者資訊。我們需要安裝兩個工具:一個是資料庫服務管理工具(DBngin),另一個是資料庫管理工具(Sequel Ace)。

安裝資料庫服務管理工具:

brew install --cask dbngin

安裝資料庫服務管理工具,如下圖:

請參考 DBngin 安裝方式

安裝資料庫管理工具:

接下來安裝資料庫管理工具,用於建立和管理資料庫:

brew install --cask sequel-ace

安裝後,請開啟 Sequel Ace 程式,輸入如下圖所示的連線資訊:

點擊 Connect,進入下一步:

選擇新增資料庫後,填寫你的資料庫名稱(例如:kamadiam)。然後按"Add",即完成新建資料庫。

步驟三:安裝 WordPress

準備安裝目錄

請先建立一個目錄,例如:sample,這個目錄將用於存放 WordPress 的程式碼。這個目錄是執行 PHP 的地方,同時也是安裝外掛或主題以及上傳圖片的存放地點。

請開啟終端機,建立並進入 sample 目錄,執行以下指令(注意:指令最後有一個點,別漏掉):

git clone https://github.com/WordPress/WordPress.git .

WordPress 原始碼存放在 GitHub 上,可以直接下載使用。這個指令會將 WordPress 的最新版本下載到當前目錄。

將目錄連接到 Herd:

接下來將這個目錄連接到 Herd,讓 Herd 能夠識別並提供服務:

herd link

執行這個指令後,Herd 會自動為這個目錄建立一個本地網址。如果目錄名稱是 sample,那麼網址就會是 http://sample.test

現在就可以使用網址 http://sample.test 連到這個網站,但這個網站還不能正常使用,因為還需要設定資料庫,別擔心,我們接下來會完成設定。

網站已經啟動,但還需要設定資料庫

設定 WordPress 環境變數

現在我們需要設定 WordPress 的資料庫連線資訊。開啟 Visual Studio Code 或你習慣的編輯器:

code .

建立設定檔:

wp-config-sample.php 複製一份,改名為 wp-config.php。這個檔案包含了 WordPress 的所有重要設定。

編輯資料庫設定:

編輯 wp-config.php,找到資料庫設定區塊,設定剛剛新增的資料庫名稱、帳號和密碼。

關於 DB_HOST,如果使用 localhost 無法連線,請改為 127.0.0.1。這是在 macOS 上使用本地資料庫時常見的設定。

/** The name of the database for WordPress */
define( 'DB_NAME', 'kamadiam' );

/** MySQL database username */
define( 'DB_USER', 'root' );

/** MySQL database password */
define( 'DB_PASSWORD', '' );

/** MySQL hostname */
define( 'DB_HOST', '127.0.0.1' );

完成安裝:

儲存檔案後,重新整理 http://sample.test,即可開始全新安裝 WordPress。你會看到 WordPress 的安裝畫面,按照指示填寫網站標題、管理員帳號和密碼等資訊即可。

是不是很方便呢?使用 Herd 架設本機 WordPress 網站就是這麼簡單!

如何使用 Herd 備份虛擬主機網站

既然我們已經知道如何架設本機 WordPress 站台,不如把正式站台一起備份在本機,可以當作測試站台,測試主題和外掛,甚至當作程式開發環境。這樣做的好處是可以在不影響正式網站的情況下,安全地測試新功能或修改。

為什麼要備份到本機?

  • 安全地測試新主題和外掛,不會影響正式網站
  • 作為程式開發環境,可以自由修改和測試
  • 當正式網站出現問題時,可以快速在本機重現並除錯
  • 學習和實驗 WordPress 的各種功能

本文以 Hostinger 提供的虛擬主機服務為例,要將正式站台複製回本機,也需要三個步驟。各虛擬主機服務商都有各自的操作介面,功能都大同小異,這邊就找一下檔案備份的功能,下圖是 Hostinger 的備份功能介面,可以下載備份或直接以備份回復站台。

Hostinger 會每日備份整個站台,包含檔案和資料庫,這讓我們可以輕鬆地將網站還原到本機環境。

步驟一:下載程式和站台檔案

  1. 選擇檔案備份(File backups)
  2. 選擇資料日期(選擇最近的備份日期)

選擇下一步,進入 domains 目錄:

勾選要下載的網站:

按一下 [Download all files] 開始準備檔案下載,Hostinger 會先將目錄壓成壓縮檔,我們需要等檔案準備好才可下載。這個過程可能需要幾分鐘,請耐心等待。

複製檔案到本機:

下載之後解壓縮,將 public_html 目錄中的所有檔案,複製到先前建立的 sample 目錄中,檔案的部分就完成。這樣就將正式網站的所有檔案都複製到本機了。

步驟二:下載資料庫

  1. 選擇 Database backups(資料庫備份)
  2. 選擇您的站台使用的資料庫

  1. 選擇資料庫日期(選擇與檔案備份相同的日期,確保資料一致性)
  2. 點擊 [Download],等待幾分鐘讓檔案準備好,一樣是下載一份壓縮檔。

匯入資料庫:

下載完成後先解壓縮,應該會看到一份 .sql 檔案。如果您有安裝 DBngin,直接雙擊該檔案,DBngin 就會自動執行這些 SQL 指令,將資料匯入本機建立的資料庫。這個過程會將正式網站的所有內容、設定和使用者資料都複製到本機資料庫中。

步驟三:修改環境參數

因為剛剛已經把您的站台從虛擬主機搬回您的本機,包含環境設定也是,所以必須手動修改設定,讓 WordPress 能夠正確連接到本機資料庫和使用本機網址。

編輯 wp-config.php

將資料庫的連線設定改為連接到本機資料庫,設定方式和前面一模一樣:

/** The name of the database for WordPress */
define( 'DB_NAME', 'kamadiam' );

/** MySQL database username */
define( 'DB_USER', 'root' );

/** MySQL database password */
define( 'DB_PASSWORD', '' );

/** MySQL hostname */
define( 'DB_HOST', '127.0.0.1' );

關閉所有外掛(可選)

這個步驟並不是必須的,但如果您有使用 All-in-One WP Security 這類安全外掛,可能會造成無法登入,或是其他特殊功能外掛(例如 Litespeed Cache、Rank Math 等等)在正式站台才能發揮用途的,可以先暫時關閉。

關閉的方式看似複雜,其實很簡單,將資料表 wp_options 中的 active_plugins 欄位值改為 a:0:{} 即可完成。這樣會停用所有外掛,讓你可以逐一測試哪些外掛需要在本機環境中啟用。

以下使用 Sequel Ace 工具作為操作範例:

設定網站的本機網址

我們在前面已經建立了 http://sample.test 本機站台,所以必須將正式站台的網址改成本機網址。這樣 WordPress 才能正確載入資源和處理連結。

例如將 / 改成 http://sample.test

完成!

現在您的本機就有完整的備份,可以用來測試主題或外掛,或者您也可以開始嘗試學習開發 PHP 程式。這個本機環境完全獨立於正式網站,可以放心地進行各種實驗和測試,不會影響到正式網站的運作。