準備 PHP 開發環境,有時比養貓還難:PHP 版本、PATH、Web 伺服器、Composer,每一項都像是在說「再猜一次」。幸好,Laravel Herd 把這些本機開發工作整理成一個桌面工具,少一點環境考古,多一點真正寫程式的時間。這篇會帶你認識 Herd、完成安裝、建立 .test 網站,並處理 PHP 版本、php.ini 與資料庫等常見設定。
如果你還不熟悉 PHP,可以先閱讀〈PHP 是什麼:架設網站最適合的程式語言〉,再回來看本篇,會比較容易把工具和語言分開理解。
什麼是 Laravel Herd?
Laravel Herd 是給 macOS 與 Windows 使用的原生 PHP、Laravel 本機開發環境。它會協助管理 PHP、Nginx、Dnsmasq 等本機服務,也提供 Herd CLI,讓你從終端機管理網站與 PHP 版本。
Herd 的核心概念和 Laravel Valet 很接近:把專案放進已設定的路徑,或使用 herd link 連結單一專案,就能透過 .test 網域在本機開啟。例如專案資料夾叫做 hello,網址通常會是 http://hello.test。
這裡要先釐清一件事:Herd 是「本機開發環境」,不是把網站發布到網際網路的主機。它的任務是讓你的電腦舒服地跑 PHP,至於正式環境,還是要另外部署。電腦也需要下班,不能永遠當伺服器。
安裝 Herd
請先到 Laravel Herd 官方網站下載適合你作業系統的版本。macOS 使用者通常會下載 DMG,開啟後將 Herd 拖曳到「應用程式」資料夾,再啟動程式。
macOS 也可以透過 Homebrew 安裝:
brew install --cask herd
安裝完成並啟動 Herd 後,程式會在背景管理本機服務。你可以從選單列圖示開啟設定,也可以在終端機確認 CLI 是否能使用:

php --version
composer --version
herd --version每個指令都能正常回應,通常就代表環境已經準備好了。如果其中一個指令顯示找不到,先重新開啟終端機;終端機也需要重新讀取 PATH,否則它會固執地活在過去。


Herd 選單列功能
建立本機網站
Herd 會使用兩種方式管理網站:parked path 與 linked directory。
使用 parked path
Herd 預設會將 ~/Herd 設為 parked path。放在這個目錄下的 PHP 專案,通常可以直接使用資料夾名稱加上 .test 開啟。例如:
mkdir -p ~/Herd/hello
cd ~/Herd/hello若你的專案放在其他位置,可以在 Herd 的 General 設定中加入該目錄。加入後,該路徑底下的子目錄就能依照資料夾名稱取得 .test 網域。
使用 herd link
不想搬動既有專案時,可以進入專案目錄並執行:
cd ~/Sites/my-project
herd linkHerd 會用資料夾名稱建立對應的 .test 網域。想指定其他名稱,也可以把網域名稱當作參數:
herd link my-project-demo接著開啟 http://my-project.test 或 http://my-project-demo.test。如果要查看或移除既有連結,可以使用 herd links 與 herd unlink;實際可用指令也會隨 Herd 版本與作業系統略有差異,遇到問題時請以官方 CLI 文件為準。
設定選項
General
General 可以設定 parked paths、預設 PHP 版本,以及其他全域選項。把常用的專案父目錄加入 parked paths 後,之後新增專案就少一個手動連結步驟。

Sites
Sites 會列出 Herd 管理的本機網站。你可以替個別網站指定 PHP 版本,也可以為網站啟用 HTTPS。個別網站的設定優先於全域設定,因此同一台電腦上同時維護舊專案與新專案時,不必把所有 PHP 專案綁在同一個版本。

PHP
PHP 頁面可以安裝與切換 Herd 支援的 PHP 版本。切換前,建議先查看專案的 composer.json、Laravel 版本與套件需求;不是最新版本就一定適合所有舊專案,PHP 也有自己的相容性脾氣。

調整 php.ini
不同 PHP 版本會有各自的 php.ini。在目前的專案目錄執行 herd ini,Herd 會開啟該專案所使用 PHP 版本的設定檔,比手動翻找系統路徑更不容易開錯檔案:
herd ini修改設定後,如果網站沒有立即反映,可以重啟 Herd:
herd restart不要直接複製網路上列出的 killall 指令來「大力重啟」服務,因為程序名稱會依作業系統、CPU 架構與安裝版本改變。能用 Herd 提供的指令,就讓工具做工具該做的事;鍵盤已經夠忙了。
設定資料庫
Herd 主要處理 PHP 應用程式與網站服務,資料庫則要另外準備。你可以使用 MySQL、PostgreSQL 或 SQLite,選哪一種要看專案的需求與設定。
如果想在 macOS 上用圖形介面管理本機資料庫,可以考慮 DBngin。它是獨立工具,不是 Herd 內建的資料庫;安裝後仍要在專案的 .env 設定正確的資料庫連線資訊。
macOS 使用 Homebrew 安裝 DBngin 的方式如下:
brew install --cask dbngin
開啟 DBngin 後,按下加號新增需要的資料庫服務。

按下 Create 建立資料庫服務。

按下 Start 啟動服務;不用時按 Stop 停止服務。資料庫沒有啟動時,Laravel 常見的連線錯誤就會出現——它不一定是在生氣,只是找不到可以聊天的資料庫。
常見問題
執行指令時顯示「command not found」,怎麼辦?
先重新啟動終端機,讓新的 PATH 設定生效,再確認 Herd 是否正在執行。如果仍然找不到指令,請從 Herd 的設定或官方文件確認 CLI 安裝方式,不要先急著修改 .zshrc;多塞一行 PATH,未必就能多一分順利。
為什麼網站打不開?
先確認三件事:專案是否放在 parked path、是否執行過 herd link,以及 Herd 是否正在執行。若網站需要資料庫,也要確認資料庫服務已啟動,並檢查 .env 的連線設定。
從 MAMP 或 Valet 遷移,該怎麼做?
遷移前先備份資料庫,再把專案目錄與環境變數整理好。從 MAMP 遷移時,通常需要匯出並重新匯入資料庫;從 Valet 遷移時,則要重新確認 Herd 的 parked path 或 link 設定。
建議按照這個順序處理:
- 備份專案與資料庫。
- 安裝並啟動 Herd。
- 為專案設定 parked path 或執行
herd link。 - 確認專案使用的 PHP 版本與 Composer 套件需求相容。
- 啟動資料庫,檢查
.env連線設定。 - 在瀏覽器開啟
.test網址並測試功能。
不必急著刪除 MAMP 或 Valet;等 Herd 上的專案確認正常,再移除舊環境比較安全。開發環境搬家最怕「家具先丟了,才發現新家還沒電」。
小結
Laravel Herd 的價值,在於把 PHP 本機開發常見的安裝與管理工作集中起來:你可以用圖形介面管理網站與 PHP 版本,也能用 herd 指令快速連結專案、調整設定。它不會替你解決每個專案的相容性問題,但能讓你少花時間處理環境,留更多時間理解真正的程式碼。
如果你正從 MAMP 或 Valet 遷移,先從一個小專案試跑,確認 PHP、Composer、資料庫與 .env 都正常,再逐步搬移其他專案。咖啡可以一杯一杯喝,環境也可以一個一個搬。
參考資料
- Laravel Herd 官方網站:下載 Herd、查看支援的作業系統與產品資訊。
- Herd:Sites(macOS):說明 parked paths、linked directories 與
.test網域。 - Herd CLI(macOS):查閱
herd link、herd park、herd ini等指令。 - Herd:Directories and Files(macOS):說明 Herd 的設定檔、PHP 與 Nginx 相關目錄。
- DBngin 官方網站:查看本機資料庫服務的安裝與管理工具。

