MAMP 本機架 WordPress 教學:Mac、Windows 適用
用 MAMP 在本機架 WordPress 的流程,Mac 與 Windows 都適用:下載安裝、phpMyAdmin 建資料庫、把檔案放進 htdocs、跑完安裝精靈,再到虛擬主機設定與搬家上線,白畫面、port 衝突的排查也一併整理。
作者:褚崇名(Sliven)
本頁目錄
- 為什麼我堅持「本機先做、上線再做一次」這套雙軌流程
- MAMP 到底是什麼:把一台伺服器塞進你的筆電
- 下載與安裝:Mac 與 Windows 兩條路徑的完整走法
- Mac 上的下載與安裝
- Windows 上的下載與安裝
- 啟動伺服器並建立 WordPress 專屬資料庫
- 放進 WordPress 檔案,跑完五分鐘安裝程序
- 設定虛擬主機與 .test 網域:給每個專案一個乾淨的家
- 三步把一個 .test 網域指向你的專案
- 讓本機環境「長得像正式主機」的四個關鍵調整
- 一、把 PHP 版本對齊正式主機
- 二、調高但不要無限放大記憶體限制
- 三、開啟除錯模式,把錯誤逼出來
- 四、固定永久連結結構
- 把本機專案放進版本控制與定時快照
- 在本機安全測試主題、外掛與 SEO 設定的實戰流程
- 測主題:先試裝、再決定
- 測外掛:衝突排查的黃金戰場
- 測 SEO 結構:網址、Schema、速度都在這裡先驗
- MAMP、Local、DevKinsta、Docker 我會怎麼選
- MAMP 出問題時的排查手冊:埠號、MySQL、白畫面
- 狀況一:Apache 或 MySQL 啟動失敗(燈號不轉綠)
- 狀況二:安裝精靈卡在資料庫連線錯誤
- 狀況三:白畫面(White Screen of Death)
- 從本機搬上正式主機前的最後檢查
- 開始你的第一個本機 WordPress 專案
為什麼我堅持「本機先做、上線再做一次」這套雙軌流程
仔細盤點,不少人都曾經在正式上線的 WordPress 後台,直接按下一個外掛的「啟用」,結果整個網站瞬間白畫面,連後台都進不去,心臟差點跳出來?我自己遇過太多次這種驚嚇場面,無論是早年自己不懂事亂裝,還是後來接手別人搞砸的網站,教訓都很一致:在正式主機上直接實驗,等於在高速公路上換輪胎。每一次「應該沒事吧」的僥倖,最後都要花十倍的時間收拾。
這篇要教你的是另一種工作方式:用 MAMP 在你自己的電腦上把 WordPress 跑起來,所有改版、裝外掛、換主題、調 SEO 結構,全部先在本機做完、確認沒事,再搬上正式主機。本機環境就是你的專屬實驗室,弄壞了也沒有任何人會看到,重建只要幾分鐘。我會把 Mac 與 Windows 兩條路徑一次講清楚,這部分在 WordPress 架站全攻略 的本機架站段有整體脈絡,並補上大多數教學略過不談的虛擬主機、正式主機對齊、SEO 測試流程,還有出問題時的排查手冊。
先給你一個快速重點整理:
- MAMP 是 Mac 與 Windows 都能用的本機伺服器套件,一次裝好 Apache、MySQL、PHP。
- 裝好之後只要建一個資料庫、把 WordPress 檔案丟進 htdocs,五分鐘就能跑完安裝精靈。
- 進一步用虛擬主機,可以讓每個專案擁有
myproject.test這種乾淨網址,不必再寫localhost/資料夾名。 - 把本機環境調整得跟正式主機一致,你在本機測出來的結果搬上線才不會走樣。
- 本機弄穩之後,再走一次搬家流程推上線,全程不用碰正式網站的任何運作中頁面。
依 W3Techs 的統計(2026 年 6 月),WordPress 是使用廣泛的內容管理系統,背後有龐大的主機、主題與外掛生態。外掛更新或 PHP 版本變動可能造成相容問題,因此先在本機或 staging 測試,是降低正式站風險的一道安全網,但本機環境仍無法完全複製正式主機。
MAMP 到底是什麼:把一台伺服器塞進你的筆電
MAMP 這個名字拆開來看,其實就是四個字的縮寫:Mac、Apache、MySQL、PHP。換句話說,它就是把一個網站伺服器需要的所有零件,打包成一個你點兩下就能啟動的應用程式。你不用自己一個一個去裝 Apache、去設定 MySQL、去煩惱 PHP 版本對不對,MAMP 一次幫你搞定。
這裡有個容易混淆的地方要先講清楚:名字雖然以 Mac 開頭,但它同時有 Mac 與 Windows 兩個版本,功能與操作邏輯幾乎一致。所以不管你是 macOS 還是 Windows 陣營,都可以用同一套工具、同一套流程,這也是我推薦它給跨平台團隊的主因。同一份交接文件,Mac 與 Windows 同事都能照著走,不會雞同鴨講。
MAMP 分成免費版與 MAMP Pro。免費版可啟動伺服器、跑 WordPress、建立資料庫並用 phpMyAdmin 管理資料表;Pro 版提供較完整的圖形化主機、HTTPS 與環境管理功能。版本功能可能調整,採購前應核對官方比較頁;是否升級要看專案數量與環境需求,不必用固定站點數判斷。
| 項目 | MAMP 免費版 | MAMP Pro |
|---|---|---|
| Apache/Nginx/MySQL/PHP | 有 | 有 |
| phpMyAdmin 資料庫管理 | 有 | 有 |
| 虛擬主機(多站點) | 需手動改設定檔 | 圖形化設定 |
| 多 PHP 版本切換 | 可選,但較陽春 | 每站可指定不同版本 |
| 本機 HTTPS 憑證 | 需自行處理 | 一鍵產生 |
| 適合對象 | 個人測試、學習、單一專案 | 同時管理多個客戶站的接案者 |
如果你是第一次接觸本機架站,我會建議直接從免費版開始,等真的被「手動改設定檔」這件事煩到了,再回頭升級 Pro。工具是來服務你的工作流程的,不是來炫技的。與其花錢買一堆用不到的功能,不如先把基礎打穩。
下載與安裝:Mac 與 Windows 兩條路徑的完整走法
Mac 上的下載與安裝
到 MAMP 官網下載 macOS 版本。目前官方流程會先取得 MAMP & MAMP PRO Downloader.zip,解壓縮後開啟 Downloader,再由安裝程式把 MAMP 安裝到「應用程式」中的 MAMP 資料夾。MAMP 官方列出 Intel 與 Apple Silicon Mac 的支援條件;實際系統需求與安裝檔格式仍應以下載頁當下說明為準。
Mac 有一個特別的坑要注意。macOS 內建就有一套 Apache 與 PHP,如果你曾經用終端機啟動過它們(例如跑過 sudo apachectl start),它們可能會佔住 80 埠,導致 MAMP 的 Apache 啟動失敗。如果你遇到 MAMP 一啟動 Apache 就亮紅燈,先到終端機執行 sudo apachectl stop 把內建的 Apache 關掉,通常就解決了。
Windows 上的下載與安裝
Windows 版同樣從官網下載 .exe 安裝檔,雙擊執行,一路下一步即可。安裝過程中它會問你要不要安裝額外元件,維持預設勾選就好,沒有需要特別調整的地方。
Windows 上常見問題之一是埠號衝突。80 埠(HTTP)與 443 埠(HTTPS)可能被 IIS、其他網頁伺服器或安全軟體占用。如果 MAMP 啟動時 Apache 顯示錯誤,先查埠號與日誌,再判斷是否為衝突。
可以先用 netstat -ano | findstr :80 找出程序代碼(PID),確認是可安全停止的已知服務後,再從該服務本身或工作管理員停用;不要只看到 PID 就強制結束系統程序。另一條路是把 MAMP 改用其他埠,例如 Apache 8888、MySQL 8889。改埠後網址與部分設定也要帶上埠號,因此仍需重新測試。
| 症狀 | 常見原因 | 第一時間處理 |
|---|---|---|
| Mac 上 Apache 啟動失敗 | macOS 內建 Apache 佔住 80 埠 | sudo apachectl stop |
| Windows 上 Apache 啟動失敗 | Skype、IIS、防毒軟體佔埠 | 關掉該程式,或改用 8888 埠 |
| MySQL 啟動失敗 | 另一個 MySQL 實例已在執行 | 工作管理員結束舊 MySQL 進程 |
| 安裝後找不到 htdocs | 裝在非預設路徑 | 到 MAMP Preferences 查看文件根目錄 |
啟動伺服器並建立 WordPress 專屬資料庫
安裝完成,打開 MAMP,你會看到一個很陽春的啟動畫面,上面一個大大的「Start Servers」按鈕。按下去,MAMP 會把 Apache 與 MySQL 同時啟動,兩個小燈轉成綠色,就代表伺服器跑起來了。啟動後它通常會自動開啟瀏覽器、連到 MAMP 的歡迎頁(http://localhost 或 http://localhost:8888,視你的埠設定而定),看到這個畫面,代表你的筆電現在已經是一台網站伺服器了。
下一步是幫 WordPress 建一個專屬資料庫。WordPress 所有的文章、頁面、設定、使用者資料,全都存在 MySQL 資料庫裡,所以你得先幫它準備好這個存放空間。流程是這樣:
- 在 MAMP 的歡迎頁上方工具列,找到 Tools → phpMyAdmin(或直接在網址列輸入
http://localhost/phpMyAdmin/)。 - 進入 phpMyAdmin 後,點左側的「New」,或上方「資料庫」分頁。
- 在「建立新資料庫」欄位輸入一個名字,例如
wp_local,編碼選utf8mb4_unicode_ci,按下「建立」。
教學常見的 MAMP 預設 MySQL 帳號與密碼是 root/root,但實際值可能因版本、平台或使用者設定不同,應以 MAMP 歡迎頁或設定畫面顯示的資訊為準。本機也不應假設永遠不會對外開放;若啟用區域網路存取或 tunnel,仍要改用安全憑證。正式環境則應使用獨立且權限受限的資料庫帳號。
編碼為什麼要選 utf8mb4?它和普通 utf8 的差別在於:utf8mb4 能儲存 4 位元組的字元(包含 emoji 與部分罕用漢字),傳統 utf8 做不到。選 utf8mb4 可以避免日後出現「文章裡打了個 emoji,存檔後變成問號亂碼」這種詭異狀況。WordPress 從 4.2 版起也以 utf8mb4 為標準。
放進 WordPress 檔案,跑完五分鐘安裝程序
資料庫準備好,接著把 WordPress 本體放進來。到 WordPress.org 下載最新版(有繁體中文版可選),解壓縮後會得到一個 wordpress 資料夾,裡面就是所有核心檔案。這個步驟和你在正式主機上安裝 WordPress 的流程其實一模一樣,差別只在於檔案放的位置:本機的 htdocs,而非遠端主機的公開目錄。
MAMP 的網站根目錄叫做 htdocs。Mac 上預設在 /Applications/MAMP/htdocs/,Windows 上預設在 C:\MAMP\htdocs\。你要做的,就是把 WordPress 的檔案放進這個 htdocs 裡。有兩種放法:
- 放在根目錄:把
wordpress資料夾「裡面」的所有檔案(不是資料夾本身)直接搬進 htdocs 根目錄。這樣你的本機網址就是http://localhost/,乾淨俐落,適合這台電腦只跑一個站。 - 放在子資料夾:把整個
wordpress資料夾搬進 htdocs,並改個好辨認的名字,例如mystore。這樣網址會是http://localhost/mystore/,適合同一台電腦同時跑好幾個專案。
檔案就定位後,打開瀏覽器,連到你的本機網址(根目錄放法就是 http://localhost/,子資料夾放法就是 http://localhost/mystore/)。WordPress 的安裝精靈就會啟動,帶你走完幾個步驟:選語言、輸入資料庫連線資訊、設定網站標題與管理員帳號密碼。資料庫連線資訊照剛剛記下的填:資料庫名稱 wp_local、帳號 root、密碼 root、資料庫主機 localhost、資料表前綴維持預設的 wp_。
整個安裝精靈跑完,你會看到「安裝完成」的祝賀畫面,並拿到後台登入網址(在網址後面加上 /wp-admin)。登進去,你的筆電上現在跑著一個完整的 WordPress 網站了。如果你是第一次接觸 WordPress 後台,建議先花十分鐘熟悉左側選單的邏輯,文章、頁面、外觀、外掛、設定這幾個大區塊的位置搞清楚,後續所有調整都會快很多。想用更快的方式把一個能看的站搭起來,30 分鐘快速架站那篇的流程也完全適用在本機環境上,步驟沒有任何差別。
設定虛擬主機與 .test 網域:給每個專案一個乾淨的家
到這裡你的本機 WordPress 已經能跑了,但網址是 localhost/mystore 這種帶子路徑的形式。老實說,它工作起來沒問題,可是有兩個讓我受不了的地方。第一,某些外掛與主題在判斷「網站根網址」時,對子路徑的處理不太乾淨,本機測沒事、搬上線卻出問題,因為正式站通常是用根網址。第二,同時跑三個專案時,網址列全是 localhost/xxx,切來切去很容易搞混現在改的是哪一站。
解法是虛擬主機(Virtual Host)。它的概念很簡單:讓你的 MAMP 伺服器根據「網址」來決定要顯示哪一個資料夾的網站。設定好之後,你在瀏覽器輸入 mystore.test,它就打開 A 專案;輸入 clientb.test,就打開 B 專案,每個專案都像一個獨立的網站,各自擁有乾淨的根網址。如果你想更深入理解背後的運作邏輯,可以參考虛擬主機的完整介紹,這裡我直接給你在 MAMP 上的實作步驟。
三步把一個 .test 網域指向你的專案
- 改 hosts 檔。Mac 打開終端機,執行
sudo nano /etc/hosts;Windows 以系統管理員身分打開記事本,編輯C:\Windows\System32\drivers\etc\hosts。在檔案最下方加一行:127.0.0.1 mystore.test,存檔離開。這一行的意思是:告訴你的電腦,以後看到mystore.test這個網址,不要去問網際網路,直接連到本機。 - 改 Apache 的虛擬主機設定。打開 MAMP 的設定(Preferences),找到 Apache 的設定檔
httpd-vhosts.conf(Mac 在/Applications/MAMP/conf/apache/extra/,Windows 在C:\MAMP\conf\apache\extra\)。在檔案裡加入一段設定,告訴 Apache:mystore.test這個網址的文件根目錄指向htdocs/mystore那個資料夾。同時記得把httpd.conf裡 vhosts 的 include 那行取消註解,設定才會生效。 - 重啟 MAMP。關掉伺服器再重新啟動,讓 Apache 載入新的虛擬主機設定。然後在瀏覽器輸入
http://mystore.test,你的專案就會以根網址的形式開啟。
第二步裡的 vhosts 設定可以拆成一組 <VirtualHost> 區塊:ServerName 填 hosts 檔加入的網址,DocumentRoot 指向專案資料夾,再用 <Directory> 區塊設定該路徑。若網站依賴 .htaccess 重寫規則,AllowOverride 需允許相應指令;權限也可依需要縮小,不必無條件套用 All。固定連結 404 時,還要一起檢查 rewrite 模組與主機區塊是否真的載入。
還有一個容易踩的小坑:MAMP 預設的 vhosts 設定檔裡會保留一個指向 MAMP 自己歡迎頁的 localhost 區塊。你新增自己的虛擬主機之後,記得把這個預設區塊也留著(或把它的 DocumentRoot 指到一個空資料夾),否則 Apache 在比對網址時可能會把所有未指定的請求都導去第一個虛擬主機,造成你輸入 localhost 卻開到客戶的專案頁。排查這類問題時,善用瀏覽器的開發者工具檢視請求實際落在哪個網址與路徑,會比憑直覺猜快很多。
設定虛擬主機是本機架站從「能跑」升級到「專業」的關鍵一步。第一次改 hosts 檔跟 vhosts 設定會覺得麻煩,但設定過一次,之後每新增一個專案只要複製貼上改個名字就好。我自己習慣用 .test 這個後綴,因為它是保留給本機開發用的網域,絕對不會跟真實的線上網址撞到。常見的替代選項還有 .local 與 .dev,但 .dev 因為 Google 已註冊為正式根網域、強制走 HTTPS,現在已不建議拿來做本機測試,會一直被瀏覽器擋下。
讓本機環境「長得像正式主機」的四個關鍵調整
很多人架完本機站就開始埋頭測試,卻忽略了一個致命問題:你的本機環境跟正式主機長得不一樣。本機的 PHP 版本可能是 8.2,正式主機卻還跑 7.4;本機的記憶體限制很寬鬆,正式主機卻卡得很緊。這會造成一種最讓人抓狂的狀況:本機測一切正常,搬上線卻壞掉,因為兩個環境根本是兩個世界。
要避免這種「本機過、上線掛」的悲劇,你必須在架完站之後,立刻做下面四個對齊動作。這也是我在接手別人的爛攤子時,第一件會檢查的事。
一、把 PHP 版本對齊正式主機
不同 PHP 版本之間有語法與行為差異,某些外掛在 7.4 能跑、到了 8.x 卻直接報錯。做法是:先去你正式主機的控制台(cPanel、Plesk、或主機商後台)查現在跑的 PHP 版本是什麼,然後在 MAMP 的 Preferences 裡把 PHP 版本切到一致。MAMP 允許你同時安裝多個 PHP 版本並自由切換,這點非常實用。
二、調高但不要無限放大記憶體限制
WordPress 預設的 WP_MEMORY_LIMIT 是 40MB,這在現代外掛環境下根本不夠用,隨便一個頁面編輯器或電商外掛就會吃到記憶體上限而崩潰。正式主機一般會建議設到 256MB 或 512MB。你在 wp-config.php 裡加上 define('WP_MEMORY_LIMIT', '512M');,本機也設一樣的值。注意,設到 512MB 是合理上限,不要為了「以防萬一」設成 2G,那只會掩蓋外掛吃記憶體的真正問題,搬到資源有限的主機上反而爆炸。
三、開啟除錯模式,把錯誤逼出來
本機是唯一適合開啟 WP_DEBUG 的地方。在 wp-config.php 裡把 WP_DEBUG 設為 true,你會看到原本被隱藏的 PHP 警告與deprecated 訊息。這些訊息在正式站上必須關掉(會暴露伺服器資訊、影響使用者體驗),但在本機它們是你最好的除錯夥伴,能提前抓出「這個外掛用了即將被移除的函式」這類地雷。搬上線之前,記得改回 false。
四、固定永久連結結構
WordPress 預設的網址是 ?p=123 這種帶查詢參數的形式,對 SEO 與可讀性都不友善。在本機就要先把永久連結設成你要的結構(最常見的是文章名 /%postname%/),這樣你測試選單、內部連結、分享網址時,行為才會跟正式站一致。固定連結需要 Apache 的 rewrite 模組支援,MAMP 預設是開啟的,但如果你設了虛擬主機,記得在 vhosts 設定裡加上 AllowOverride All,rewrite 規則才會生效。
| 調整項目 | 為什麼要對齊 | 本機建議值 |
|---|---|---|
| PHP 版本 | 版本差異會讓外掛在本機正常、上線報錯 | 與正式主機一致 |
| WP_MEMORY_LIMIT | 記憶體不足會造成白畫面與外掛崩潰 | 256M 至 512M |
| WP_DEBUG | 本機開啟能提前抓到 deprecated 警告 | 本機 true、正式 false |
| 永久連結結構 | 影響內部連結與 SEO 測試結果 | /%postname%/ |
這四個動作做完,你的本機環境才算是「可信的測試場」,而非一個會給你假信號的歡樂泡泡。
把本機專案放進版本控制與定時快照
有一個習慣我必須特別拉出來講:本機站雖然弄壞了隨時能重建,但「重建」的前提是你還記得自己裝過哪些外掛、改過哪些設定。我自己的做法是給每個本機專案建一個資料夾,把自訂的子主題(child theme)、wp-config.php 的自訂片段、以及一份記錄外掛清單與版本號的純文字檔,一起放進 Git 版本控制。核心 WordPress 檔案與 wp-content/uploads 龐大又不常手動改,不必進版控,用一份定期匯出的資料庫 SQL 備份搭配即可。
這套做法的好處在於:當某次大改把站搞壞了,你能用 Git 的版本紀錄快速回溯「上週這套主題與外掛組合是正常的」,把問題範圍立刻縮小到這幾天的變動。這比憑記憶回想「我到底動了什麼」可靠太多。即便你不用 Git,至少養成每隔幾天就用 phpMyAdmin 匯出一次資料庫、把 htdocs 專案資料夾壓縮一份帶日期的快照丟到雲端硬碟的習慣。本機硬碟不會壞的錯覺,是每一個等到壞了才後悔的人都曾經相信過的事。
在本機安全測試主題、外掛與 SEO 設定的實戰流程
本機架好、環境對齊,接下來就是它真正發揮價值的地方:拿來測試所有你「不敢在正式站上直接做」的事。我把本機最常用的測試場景整理成一套流程,這也是我日常工作的標準動作。
測主題:先試裝、再決定
換主題是 WordPress 最危險的操作之一,因為主題掌控了整個前端的版面與樣式,一換下去選單、頁面模板、小工具位置全部可能走樣。在本機你可以盡情安裝並啟用候選主題,實際套上你的內容看效果,不喜歡就直接刪掉,完全不影響正式站。如果你還在挑選階段,主流 WordPress 主題的比較可以幫你先縮小範圍;像 Astra 這類輕量、SEO 友善的主題,很適合拿來當本機測試的基準,因為它跟大多數頁面編輯器的相容性都經過大量驗證,可以排除「是主題造成的問題」這個變數。
測外掛:衝突排查的黃金戰場
外掛衝突是 WordPress 最難抓的 bug 來源。症狀通常很詭異:某個按鈕突然沒反應、某個頁面載入到一半卡住、後台某個欄位消失。在正式站上你不可能一個一個停用外掛來抓兇手,因為每停用一個,網站就少一個功能。但在本機,你可以用二分法系統性地排查:把所有外掛停用,確認問題消失,然後一次啟用一半,逐步縮小範圍,很快就能鎖定是哪一個外掛跟其他人打架。裝新外掛之前,先在本機試裝跑一輪,也已經是我多年的鐵律,參考值得安裝的 WordPress 外掛清單時,我會一個一個丟進本機驗證再決定要不要上線。測完一輪想還原環境,也可以把 WordPress 資料庫重置回初始狀態,讓每次實驗都從乾淨的起點重新開始。
測 SEO 結構:網址、Schema、速度都在這裡先驗
這是本機對 SEO 工作者最有價值的一面。Google 把頁面體驗(page experience)納入排名考量已經是多年的事(2020 年 5 月的 頁面體驗評估公告),而行動版載入速度更早就是行動搜尋的排名因素之一(2018 年 1 月的 行動搜尋速度公告)。再加上 Google 已全面採行動優先索引(mobile-first indexing),桌機與行動版的呈現都會被拿來評估(2023 年 10 月的 行動優先索引公告)。
這些因素告訴我們一件事:你不能等上線了才發現網站慢、結構亂。在本機你可以放心地實驗各種 SEO 設定,例如調整永久連結結構、測試不同的標題與中繼描述寫法、啟用結構化資料標記,然後用瀏覽器開發者工具檢查渲染結果。完整的 SEO 優化脈絡可以對照WordPress SEO 全攻略,把裡面的每一項都在本機跑過一次,再挑穩定的部分搬上線。速度方面的調校,像是快取與圖片壓縮的先後順序,也能先在本機對照載入速度優化全攻略做一輪實驗,找出對你的主題與外掛組合最有效的配置。
不過要提醒一個本機 SEO 測試的本質限制:Core Web Vitals 的實際分數來自真實使用者的現場資料,本機測出來的 Lighthouse 分數只能當「方向性參考」,不能直接當作上線後的成績。原因是本機沒有真實的網路延遲、沒有第三方追蹤碼、也沒有真實使用者分布。所以本機測速度的目標不是預測分數,而是確認結構性問題(例如某個外掛是否拖慢了首屏渲染)。
結構化資料(Schema)是另一個非常適合在本機先打磨的環節。無論你用佈景主題內建的 Schema 設定,還是額外安裝 SEO 外掛來產生 JSON-LD,本機都能讓你反覆檢視原始碼、對照 Google 官方的結構化資料文件,確認 Article、Breadcrumb、FAQ 這些標記的欄位是否填得正確、有沒有多餘或衝突的標記。等到標記乾淨了再上線,能省下「上線後才被 Search Console 回報結構化資料錯誤」的來回修正。行動版呈現也一樣:MAMP 跑出來的頁面,你可以直接用瀏覽器的裝置模擬工具切換到手機視窗,檢查字級、按鈕間距、選單摺疊在各種寬度下的表現,確認行動版的可讀性與可用性都到位,這在行動優先索引的時代是必修課。
快取與圖片這兩大效能變數,也建議在本機建立一套固定的測量基準。先記下「未裝快取外掛」時首頁的請求數與傳輸量,再逐一啟用你要測的快取方案與圖片壓縮工具,每啟用一項就重新量一次,你會清楚看見每一個工具到底替你省下多少傳輸量、又是否反而拖慢了後台的反應。這份對照表搬到正式站上就是現成的效能調校藍圖,不必在上線後邊摸索邊冒險。
MAMP、Local、DevKinsta、Docker 我會怎麼選
MAMP 不是唯一的本機架站方案。這幾年市面上出現了好幾個各有強項的替代品,我常被問到底該選哪一個。與其丟出一句「看情況而定」的空話,我選擇直接把選擇邏輯講清楚。這張表是我實際用過這幾套工具之後的比較。
| 工具 | 最擅長的場景 | 最大的代價 |
|---|---|---|
| MAMP | 跨平台一致、安裝直覺、想理解伺服器運作 | 虛擬主機與多 PHP 版本要手動設定 |
| Local(前身 Local by Flywheel) | 一鍵建站、免改 hosts、想最快開工 | 封裝較厚、較難接觸底層伺服器細節 |
| DevKinsta | 已使用 Kinsta 主機、要在本機鏡像正式環境 | 與 Kinsta 綁定深、換主機商就用不上 |
| Docker(自行組態) | 團隊協作、要可重現的版本控制環境 | 學習曲線最陡、指令與設定最多 |
如果重視快速建站,自動處理虛擬網域與 HTTPS 的本機工具通常比手動設定 MAMP 省事;主機商提供的開發工具也可能簡化推送流程,但不能保證與正式環境完全一致。團隊若需要可重現環境,可評估 Docker。換工具仍要處理檔案、資料庫、網址與版本差異,成本不一定很低,應先用小型測試站驗證。
這篇以 MAMP 為主,因為手動設定 hosts、virtual hosts 與 PHP 版本,有助於理解本機伺服器的組成。它適合想接觸底層設定的人;若目標只是快速建立可用環境,其他工具可能更合適,沒有單一方案是所有學習者的最佳入口。
MAMP 出問題時的排查手冊:埠號、MySQL、白畫面
本機架站常見問題可以先分成三類,以下整理成可直接執行的排查步驟。若錯誤涉及檔案權限、版本或第三方服務,仍可能需要查看日誌或官方文件。
狀況一:Apache 或 MySQL 啟動失敗(燈號不轉綠)
這幾乎都是埠號衝突。先確認是 Apache 還是 MySQL 的燈沒亮。如果是 Apache,照前面講的,找出佔住 80 或 443 埠的程式關掉,或者把 MAMP 改用 8888 埠。如果是 MySQL,通常是另一個 MySQL 實例還在執行,到工作管理員(Windows)或活動監視器(Mac)搜尋 mysql,把殘留的進程結束,再重啟 MAMP。
狀況二:安裝精靈卡在資料庫連線錯誤
畫面顯示「Error establishing a database connection」,代表 WordPress 連不上資料庫。依序檢查資料庫名稱、MAMP 顯示的實際帳號密碼、MySQL 服務與埠號。如果 MySQL 不是預設 3306,wp-config.php 的資料庫主機可能要寫成 localhost:埠號,實際格式以當前環境為準。
狀況三:白畫面(White Screen of Death)
整個畫面一片空白、沒有任何錯誤訊息,常見原因是 PHP 錯誤未顯示,也可能涉及記憶體、檔案權限或伺服器設定。先查看 PHP 與 WordPress 除錯日誌,再依下列步驟縮小範圍:
- 先確認
WP_DEBUG已開啟,讓錯誤訊息顯示出來,你才知道兇手是誰。 - 透過檔案管理員,把
wp-content/plugins資料夾整個改名(例如改成plugins_off),這會一次停用所有外掛。如果畫面恢復,代表是某個外掛造成的,再把資料夾改回原名,逐一重新啟用找出兇手。 - 如果停用所有外掛後還是白畫面,改把目前的主題資料夾改名,強制 WordPress 退回預設主題,排除是不是主題的問題。
- 如果以上都沒用,檢查 PHP 記憶體限制是不是設太低,以及 MAMP 的 PHP 版本是不是跟你的 WordPress 版本與外掛相容。
這套排查邏輯不只適用本機,正式站出問題時也是同一套思路,差別只在於正式站你動作要更謹慎、一定要先做好完整備份再動手。本機的價值,就是讓你把這套除錯功力在零風險的環境裡練熟。
從本機搬上正式主機前的最後檢查
本機測試全部通過,接下來就是把站搬上正式主機。這一步我不在這篇展開細節,因為從本地端搬家到線上主機的完整教學已經把流程拆得很清楚,包含資料庫匯出匯入、網址替換、檔案傳輸的每一個步驟。這裡我要強調的是搬家之前的檢查清單,因為這些項目如果漏了,搬上去再來補會非常痛苦。
- 確認永久連結結構已經固定,不要等上線才改,否則所有內部連結與分享出去的網址都可能失效。
- 確認所有測試用的假資料是否要保留。如果是給客戶的站,測試文章與佔位圖片記得清掉,避免上線後看起來像半成品。
- 確認
WP_DEBUG已關閉,正式站不應該把 PHP 警告暴露給訪客。 - 確認搜尋引擎可見性。本機開發期間,WordPress 的「阻止搜尋引擎索引這個網站」選項通常是開啟的,搬家上線後記得到設定裡關掉,否則 Google 永遠找不到你的站。
- 確認正式主機已備好 SSL 憑證。HTTPS 已是基本配備,Google 也明確將其納入排名與瀏覽器信任的考量,搬家前先搞定SSL 憑證與HTTP 升級 HTTPS的設定,才不用上線後再緊急處理混合內容的問題。
趁搬家這個節點,順手把主機層的事一起想清楚,也會省下之後的麻煩。如果你還在比較不同類型主機的差異,主機類型完整比較可以幫你釐清共享、VPS、虛擬主機之間的取捨;日後若需要再換主機商,WordPress 搬家到新主機的流程也與本機到正式主機的邏輯相通。
開始你的第一個本機 WordPress 專案
本機架站真正的威力,不在於它免費、不在於它離線可用,而在於它給了你一個可以犯錯的安全空間。每一個我在正式站上成功避免的災難,背後都是先在本機踩過坑、學會了、才不再犯。把這個習慣建立起來,你對 WordPress 的掌握度會以完全不同的速度成長,因為你不再被「怕弄壞」綁住手腳,敢去碰那些你一直迴避的設定頁面與外掛組合。
還有一個長期下來更值錢的副作用:當你反覆在本機拆解過伺服器、資料庫、PHP 與 WordPress 之間的關係,你對整個網站技術棧的理解會從「按下按鈕等結果」升級成「看得出每個環節在幹什麼」。這份底子,是日後判斷主機方案、排查正式站效能瓶頸、評估外掛品質時最可靠的依據,別人給不了你,只能靠一次次本機實作累積出來。
現在,照著這份行動清單,把你的第一個本機站開起來:
- 下載並安裝 MAMP(Mac 或 Windows 版),啟動伺服器,確認 Apache 與 MySQL 兩個燈都轉綠。
- 在 phpMyAdmin 建一個資料庫,命名
wp_local,編碼選 utf8mb4_unicode_ci。 - 下載 WordPress 繁體中文版,解壓縮後放進 MAMP 的 htdocs 資料夾。
- 跑完安裝精靈,填入資料庫連線資訊,設定管理員帳號密碼,登入後台。
- 做四個對齊動作:PHP 版本、記憶體限制、WP_DEBUG、永久連結結構,全部對齊你的正式主機。
- 挑一個你不敢在正式站上做的實驗,例如裝一個一直想試的外掛、換一套主題、或重排一次選單,在本機放手去做。
六個步驟走完,你就擁有一個隨時可以重建、隨時可以犯錯、完全不會影響任何線上網站的實驗室。這個習慣一旦養成,你會回不去那種「在正式站上賭一把」的危險日子。把每一次大膽的嘗試都留給本機,把每一次穩妥的上線都留給正式主機,這就是讓 WordPress 網站長期健康營運的底層紀律。現在,輪到你親手把第一個本機站開起來了。
常見問題
MAMP 免費版夠用嗎?需要買 MAMP Pro 嗎?
localhost 是什麼意思?為什麼網址是 localhost:8888?
MAMP 架站遇到白畫面怎麼辦?
搬家後圖片破圖或連結指回 localhost 怎麼修?
操作步驟
- 下載並安裝 MAMP:到官網依作業系統下載免費版,保留預設 Port 與路徑,開啟 MAMP(不是 MAMP Pro)並點啟動鈕,Apache 與 MySQL 小圓點變綠即成功。
- 用 phpMyAdmin 建立資料庫:從 MAMP 歡迎頁 Tools 進入 phpMyAdmin,用小寫英文名稱(如 wp_local)建資料庫,編碼選 utf8mb4_unicode_ci;本機直接用 MAMP 預設的 root 帳號(密碼也是 root),不必另外建獨立使用者,記下這組帳密待會安裝精靈要用。
- 把 WordPress 主程式放進 htdocs:從 WordPress.org 下載主程式 zip,解壓縮後將資料夾重新命名成英文站名(如 mysite),整包放進 MAMP 的 htdocs 路徑。
- 跑 WordPress 安裝精靈:瀏覽器開 http://localhost/mysite(若你把 Apache 改成 8888 port,則是 http://localhost:8888/mysite),填入資料庫名稱、帳密、主機設 localhost,再設定網站標題與後台登入帳密,按下安裝 WordPress 即可登入後台。
- 搬家到線上主機:用搬家外掛打包或手動上傳檔案加匯入資料庫,更新 WordPress 位址與網站位址,並對整個資料庫做一次完整的搜尋取代把 localhost 換成正式網域。