GitHub 已經 Commit,網站卻沒更新?先分清楚部署、快取與網址三件事
小企業用 GitHub 與 Cloudflare Pages 架設靜態網站時,最常遇到的疑問是:明明已經 commit,為什麼網站還沒變?這篇整理部署、快取、網址與人工確認流程,避免把正常等待誤判成網站故障。
用 GitHub 後台貼文章時,最容易遇到一個狀況:
我明明已經 Commit 了,為什麼網站還沒更新?
這時候很多人會緊張。
以為文章沒存成功。
以為 GitHub 壞了。
以為 Cloudflare 沒部署。
以為網站壞掉。
以為自己貼錯地方。
但實際上,不一定是錯誤。
因為從 GitHub commit 到網站真的顯示,中間通常還有幾個步驟:
- GitHub 收到 commit。
- Cloudflare Pages 偵測到 main 分支更新。
- Cloudflare 開始 build。
- build 成功後部署新版。
- 瀏覽器或 Cloudflare 快取更新。
- 使用者打開正確網址確認。
只要其中任何一段還沒完成,你看到的畫面就可能還是舊版。
所以遇到「網站沒更新」時,第一步不是亂改,而是先分清楚:
是部署還沒完成?快取還沒更新?還是網址打錯?
Commit 成功,不等於網站已更新
GitHub commit 成功,只代表一件事:
檔案已經進到 GitHub repo。
它不代表網站已經完成部署。
因為 printapp.uk 是 Astro 靜態網站,部署流程是:
GitHub → Cloudflare Pages → build → 上線
也就是說,GitHub 只是第一站。
當你在 GitHub 後台新增文章,按下 Commit changes 之後,Cloudflare Pages 還要接著處理。
它需要:
- 拉取最新 repo
- 安裝依賴或使用既有環境
- 執行 build
- 產生 dist
- 發佈到 Cloudflare Pages
- 更新公開網址
這些通常很快,但不是零秒。
所以按下 commit 後,建議先等一到三分鐘,再測公開網址。
第一件事:確認網址是否正確
很多時候,網站沒更新其實是網址打錯。
Astro 文章的網址通常由檔名決定。
例如檔案是:
src/content/blog/cloudflare-pages-deploy-cache-check.md