雅寶社區 · 頂客論壇 (AHPAL.COM)

Cloudflare Pages 免費託管實戰 2026:GitHub 儲存庫自動化部署與自訂網域教學

computer%20screen%20showing%20data%20visualization...
發表時間:2026 年 09 月 02 日 | 更新日期:2026 年 09 月 02 日 | 編輯:雅寶社區編輯團隊

在網站開發與部署的領域中,穩定性、速度與成本始終是開發者與站長最關心的三大核心問題。過去,我們需要花費不少時間與金錢在虛擬主機的租賃與維護上,或是擔心流量突然爆量而導致主機負載過重。然而,現今的靜態網站生成器(SSG)與雲端平台的發展已日趨成熟,讓網站部署變得前所未有的簡單。本篇文章將帶您深入探索 Cloudflare Pages 這項強大的免費服務,並從零開始,詳細解說如何透過 GitHub 儲存庫串接,實現「Push 更新的同時,網站就自動更新」的全自動化流程,最後帶領各位完成自訂網域的掛載與設定。無論您是部落格寫手、前端工程師,或是想為自家產品建立形象官網,這篇 2026 年最完整的實戰教學 都將是您不可或缺的絕佳指南。

文章目錄:

  • 一、為什麼 2026 年網站部署必選 Cloudflare Pages?

    全新世代 CDN 邊緣網路加持

    完全免費的慷慨額度

    二、環境準備:GitHub 儲存庫建立與本地專案結構

    安裝 Git 並初始化本機端的專案資料夾

  • 上傳專案並建立 GitHub Repository
  • 三、核心串接:Cloudflare Pages 與 GitHub 的自動化部署

  • 將 GitHub 連結至 Cloudflare 帳戶
  • 建立 Pages 專案並設定建置指令

    驗證自動化部署流程的運作

    四、進階設定:自訂網域掛載與 SSL/TLS 安全憑證

    新增自訂網域並調整 DNS 指向

    SSL/TLS 加密模式與 HSTS 預載

    五、常見疑難雜症與效能調校(2026 最新情報)

    解決建置失敗的 7 大常見原因

    透過環境變數優化官方統計報表

    結語:擁抱無伺服器的極簡維運時代

    一、為什麼 2026 年網站部署必選 Cloudflare Pages?

    在 2026 年的當下,市場上有 Vercel、Netlify 與 GitHub Pages 等眾多選擇,但 Cloudflare Pages 憑藉其母公司強大的全球網域名稱系統(DNS)基礎設施,正以「水漲船高」之姿侵蝕著傳統靜態託管的版圖。它不僅僅是一個靜態網頁空間,更是一個融合了邊緣運算、影像最佳化與智慧安全防護的全方位平台。倘若您要尋找性價比最高的方案,Cloudflare Pages 絕對是一切「免費」抽象概念的終極體現。

    全新世代 CDN 邊緣網路加持

    Cloudflare 在全球超過 330 個城市設有資料中心,這意味著當訪客使用者連線到您的網站時,他接收到的內容並非來自遙遠的單一主機,而是距離他地理位置最近的邊緣節點所提供。這種分散式架構帶來的優勢極其顯著:第一,加載速度極快,無論訪客是來自台灣、香港或是美國,都能體驗到近乎瞬開的極速效能;第二,天然的 DDoS 防護,即使在大型網路攻擊下,網站依然能保持連線穩定。相較於傳統虛擬主機,Cloudflare Pages 讓您的網站天生就具備了企業級的網路韌性。

    完全免費的慷慨額度

    免費方案雖然看似殘缺,但 Cloudflare 卻打破了這種迷思。在最新的免費方案中,您每個月可擁有無限頻寬(無需支付高額的流量超額費用),以及無限制的靜態請求次數。同時,官方提供了每個月 500 次的建置次數額度,對於個人開發或中小型企業官網來說,這基本上等同於「無限使用」。如此一來,使用者完全不需要擔心初期成本與未來的擴充費用,只需要專注於內容層面的產出與優化,網站的硬體與環境問題,全部交由 Cloudflare 的全球網路來承擔。

    二、環境準備:GitHub 儲存庫建立與本地專案結構

    要透過 Cloudflare Pages 進行自動化部署,GitHub 絕對是不可或缺的重要拼圖。本段我們將從零開始,手把手教您在本地端建立一個簡單但結構完整的網頁專案,並將其推送到 GitHub 的雲端儲存庫,為後續的串接流程做好萬全準備。

    安裝 Git 並初始化本機端的專案資料夾

    首先,請務必前往 Git 官方網站下載符合您作業系統(Windows、macOS、Linux)的 Git 版本。安裝完畢後,請在您的電腦中任意位置建立一個新資料夾,名稱可命名為 my-cloudflare-site。接著,在該資料夾路徑下開啟終端機(Terminal),並輸入以下指令來初始化這個專案:

    mkdir my-cloudflare-site

    cd my-cloudflare-site

    git init

    此時,資料夾內會自動出現一個隱藏的 .git 資料夾,代表版本控制已啟動。在此資料夾中,我們建立一個最基本的 index.html 檔案,內容如下(請注意中文編碼絕對要加上 charset="UTF-8"):

    <!DOCTYPE html>

    <html lang="zh-Hant">

    <head>

    <meta charset="UTF-8">

    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <title>我的 2026 超速網站</title>

    </head>

    <body>

    <h1>歡迎光臨雅寶社區!</h1>

    <p>這是一個部署於 Cloudflare Pages 上的極速靜態網頁。</p>

    </body>

    </html>

    當程式碼撰寫完成,我們即可將此檔案加入 Git 追蹤清單,並建立第一個版本的紀錄(Commit):

    git add .

    git commit -m "首次建立專案,初始化基本網頁架構"

    上傳專案並建立 GitHub Repository

    完成本地端的初次提交後,我們需要一個雲端存放處。請登入您的 GitHub 帳戶(若沒有請先免費註冊),點擊按鈕右上角的「+」選擇「New repository」。在此,Repository name 請命名為 my-cloudflare-site,並記得將可見度(Visibility)設定為 Public(因為免費版本的 Cloudflare Pages 串接公開儲存庫較為直覺,Private 亦可透過新增 Cloudflare 為合作夥伴達成,但此教學先以 Public 為主)。

    建立完成後,GitHub 會提供一串遠端位址。請回到您的專案資料夾終端機,執行以下指令將本地內容上傳至 GitHub:

    git remote add origin https://github.com/您的GitHub使用者名稱/my-cloudflare-site.git

    git branch -M main

    git push -u origin main

    輸入上述指令後,您的瀏覽器可能跳出視窗要求授權登入 Git 與 GitHub,完成授權後,畫面即會顯示上傳成功的訊息。至此,您的專案已成功進入雲端,未來的每一次內容更新,我們都將透過 Git 指令來進行版本控管。

    三、核心串接:Cloudflare Pages 與 GitHub 的自動化部署

    檔案已準備就緒,緊接著就進入整個流程中最關鍵也最令人興奮的環節——讓 Cloudflare Pages 與您的 GitHub 儲存庫「無縫接軌」。只要在雲端介面做過一次設定,從今以後,您每一次的推送(Push)更新,系統都會自動偵測並為您重新建置與部署,徹底省去手動上傳至 FTP 的繁瑣操作。

    將 GitHub 連結至 Cloudflare 帳戶

    首先,請移至 Cloudflare 官網註冊並登入帳戶(免費版涵蓋此功能)。登入後,點擊左側選單的 Workers 與 Pages,接著點選上部頁籤中的 Pages,最後找到「建立專案」或「Connect to Git」按鈕。此時系統會引導您連結 GitHub 帳戶,Cloudflare 要求存取 GitHub 資料時,請選擇「所有儲存庫」或指定的單一儲存庫存取權限,以利後續讀取專案程式碼。透過 OAuth 認證的機制,Cloudflare 能夠在不取得您 GitHub 密碼的前提下,以安全的方式存取並自動監控您的程式碼變動。

    建立 Pages 專案並設定建置指令

    連結成功後,請從清單中選取剛剛建立的 my-cloudflare-site 儲存庫,並點擊「開始設定」。接著,請特別注意架設框架預設值(Framework preset)欄位,選擇「None」即可,因為我們此範例是單純的靜態 HTML,不需依賴 Node.js 進行打包轉換。若是使用 VuePress、Astro 或 Hexo 框架的使用者,則應在此欄位選擇相符的選項,Cloudflare 會自動帶入合適的建置指令與輸出目錄。

    手動設定時,請將欄位填寫如下:

  • Build command(建置指令): 在單純 HTML 情境下留空即可(但若您是 Hexo 使用者,此欄位則要填 npm run build)。
  • Build output directory(輸出目錄): 由於我們的檔案放在根目錄,請輸入 /(根目錄符號)。若框架輸出位置在 public,則輸入 public
  • 當介面出現「儲存並部署」按鈕時,用力按下去!系統便會立刻開始第一次的建置與部署流程。此刻出現在螢幕上的即時日誌(Log),會清晰地展示每個構建步驟的結果,當最終顯示綠色的成功字樣,並提供一組 *.pages.dev 的網址時,恭喜您,您的第一個雲端自動化部署網站已正式上線!

    驗證自動化部署流程的運作

    針對「自動化」這個概念,眼見為憑的親身測試是最好的驗收方式。請回到本機端的專案資料夾,用文字編輯器(如 VS Code)修改 index.html 中的標題,例如將文字改為 <h1>歡迎光臨雅寶社區,更新成功!</h1>。接著輸入下列指令:

    git add .

    git commit -m "測試自動部署流程:修改首頁標題"

    git push origin main

    等待約莫 30 秒至 1 分鐘,再次重新整理您剛剛獲得的 *.pages.dev 網頁,您會發現網頁內容已經變更完成,完全無需手動介入。Cloudflare 的 Git 整合功能,會透過 Webhook 技術監控儲存庫的變動,並自動觸發新版本的程式建置流程。這項特性對於想要敏捷開發與快速修補錯誤的團隊而言,可謂是大幅提升了效率與彈性。

    四、進階設定:自訂網域掛載與 SSL/TLS 安全憑證

    部署完成後,每一位使用者都會獲得一組 專案名稱.pages.dev 的次級網域。但這對專業網站來說總覺得不夠體面也不易記憶。想要讓網站以 https://www.yourdomain.com 的形式呈現,就必須執行自訂網域的來連結設定,而 Cloudflare 正好也是全球最頂尖的 DNS 代管商,使其設定流程極為順暢。

    新增自訂網域並調整 DNS 指向

    進入您的 Pages 專案介面,點選上方頁籤的 自訂網域(Custom domains),並點擊「設定自訂網域」。輸入您欲使用的網域名稱(例如 blog.dingker.idv.twwww.example.com)。如果您的網域當前的 DNS 是在其他廠商(例如 GoDaddy、Namecheap),系統會要求您先將網域的 Nameserver(名稱伺服器)變更指向 Cloudflare 提供的兩組名稱(例如 asha.ns.cloudflare.com 等)。

    當 Cloudflare 成功接管您的網域 DNS 後,接下來的動作非常簡單:只要在 DNS 管理頁面新增一筆 CNAME(Canonical Name)紀錄,將您的主機名稱(如 wwwblog)指向您的預設 Pages 網域(如 my-cloudflare-site.pages.dev),並開啟「僅限 DNS」的 Proxy 狀態(橘色雲朵圖示)。在短短的幾分鐘內,Cloudflare 即會自動檢測並核發 SSL 憑證,您的自訂網域便可成功連線至網站專案。

    SSL/TLS 加密模式與 HSTS 預載

    為確保網站連線絕對安全,SSL/TLS 的加密層級扮演著舉足輕重的角色。進入 Cloudflare 網域的「SSL/TLS」總覽,在加密模式中,若您的來源伺服器(Cloudflare Pages)本身已支援 HTTPS,請務必將模式設定為 完整(嚴格)。這代表了從訪客的瀏覽器到 Cloudflare 邊緣節點,以及 Cloudflare 到 Pages 來源伺服器之間的連線,全程皆為加密狀態。

    此外,建議您在同頁籤中一併開啟 Always Use HTTPSHSTS(HTTP 嚴格傳輸安全性)功能。HSTS 會告知瀏覽器「未來的一段時間內,只准許使用 HTTPS 連線此網站」,這能有效防止中間人攻擊與 SSL Stripping 等進階威脅。透過此層層防護,您的網站不僅跑得快,安全性也臻至完美,大幅提升訪客於網站中停留的信心。

    五、常見疑難雜症與效能調校(2026 最新情報)

    即使部署流程再簡潔,開發過程中難免會遇到一些挫折與盲點。以下整理了 2026 年當下開發者最常遇到的問題與相對應的排除方法。當您遭遇部署失敗時,請隨時參照此章節進行排查,將有助於迅速釐清障礙。

    解決建置失敗的 7 大常見原因

    很多時候部署失敗並非 Code 本身的邏輯錯誤,而是源自於環境設定的細微疏漏。最常見的莫過於路徑大小寫差異(例如 Linux 環境對大小寫敏感,檔案名稱若命名為 Index.HTML 可能導致讀取錯誤)。其次是遺漏框架建置指令:當您使用 Astro 或 Next.js 時,務必在專案中安裝所有相關的 Node.js 端模組(即存在 package-lock.json 檔案),並確保 Pages 設定的 Root Directory 路徑正確。

    第三點,請確認您的終端機指令所輸入的輸出目錄名稱,與框架設定檔所定義的目錄完全一致。若是使用 Vite 等打包工具,預設輸出為 dist;若是使用較老派的 Jekyll 則為 _site。第四,若是靜態個人網站並未使用任何建置工具,切勿在 Cloudflare 的建置欄位填入任何指令,否則系統會因找不到指定執行環境而報錯停止。第五,留意 GitHub 儲存庫是否設定了 Branch 分支保護規則,導致 Cloudflare 無法獲取最新的程式碼權限。第六,避免使用專案資料夾中不允許的特殊字元。

    最後,也是最常被忽略的一點,請檢查您的 .gitignore 檔案是否誤將含有「套件依賴路徑」的資料夾(如 node_modules)排除,而這通常不是錯誤,是正常的,但請確保 Cloudflare 在建置前執行 npm install 時,網路與權限沒有遭到企業防火牆封鎖。當您的建置日誌呈現鮮紅色錯誤時,請將游標移至日誌最底層查看程式碼卡住的確切原因,Cloudflare 提供的 Log 極其詳細,絕大多數時候都能靠著閱讀錯誤訊息來解決問題。

    透過環境變數優化官方統計報表

    網站的營運不能只依賴直覺,數據分析至關重要。預設情況下的 Cloudflare Pages 可讓您連接 Cloudflare Web Analytics 以獲得訪客數據。然而,您可能會遇到報表中出現大量來自分公司內部 IP 的流量,導致數據失真。此時,您可以在 Pages 專案的「設定」->「環境變數」中,新增一組名為 CF_ANALYTICS_TOKEN 的變數,並預先填入僅適用於特定區域的 Token。

    除了數據追蹤外,環境變數經常被用來動態調整前端的 API 端點,或是切換測試環境與正式環境的變數值。例如您可以設定 NODE_ENVproduction,讓打包工具自動執行 Tree Shaking,去除多餘的開發用程式碼,以縮小網頁 JS 檔案大小,進而加快頁面載入速度。善用環境變數的串接,能讓您的開發維運流程如虎添翼,變得更為嚴謹且具備高擴充性。

    結語:擁抱無伺服器的極簡維運時代

    在 2026 年的今日,Cloudflare Pages 已經不再只是一個「靜態網頁空間」的替代品,而是現代網站基礎架構的典範轉移。透過這篇教學,我們完成了從本機專案開發、Git 版本控制推送、Cloudflare Pages 自動化部署,到最終掛載自訂網域的完整循環。整個過程強調了現代 DevOps 文化的核心思維——「自動化、可重現、高彈性」。不需要虛擬主機控制台,也無需耗費心力管理繁瑣的 Nginx 設定,伺服器的一切抽象資源已被雲端函式與邊緣網路完全取代。

    透過此方案,無論您身處世界的哪個角落,都能將心力專注在打造更卓越的使用者體驗與創作高品質的內容上。期望本文能在您探索 Cloudflare 生態系的旅程中,成為一本實用且關鍵的參考文獻。現在,請開啟您的編輯器,大膽地建立一個專案吧,部署的全新紀元正等待著您的到來。

    ```

    💬 留言討論

    歡迎在下方留言,分享您的想法、心得或疑問。所有留言都會透過 GitHub 帳號 進行驗證。

    🏠 返回首頁