跳轉到內容

Cloudflare 全面使用指南 2026:DNS + CDN + R2 + Pages + Tunnel 一站式

如果你玩 VPS、自建服務、寫博客,幾乎繞不開 Cloudflare。它免費提供了 DNS 解析、CDN 加速、SSL 證書、DDoS 防護、對象存儲、靜態託管、內網穿透等一整套基礎設施——對個人開發者和站長來說,是「降本增效」的瑞士軍刀。

但 Cloudflare 功能龐雜,新手很容易只用到了 DNS 解析這一層。本文是 2026 年最新版 Cloudflare 全景指南,把 DNS、CDN、SSL、R2、Pages、Tunnel、Zero Trust、WAF 串成一條完整鏈路,最後用本站 y-m.top 的真實實踐收尾。


一、Cloudflare 是什麼?免費版能做什麼

Cloudflare 是一家邊緣網絡服務商,在全球 300+ 城市部署了數據中心。你的流量會先經過 Cloudflare 的邊緣節點,再回源到你的服務器——這就帶來了加速、安全和隱藏源站 IP 三大收益。

免費版核心能力

能力免費額度說明
DNS 解析無限域名/記錄比多數付費 DNS 還快
CDN 緩存無限流量靜態資源全球緩存
SSL/TLS全自動證書支持 Strict 模式
DDoS 防護無限L3/L4/L7 全防護
WAF 託管規則基礎規則集防常見攻擊
R2 存儲10 GB 免費無出口流量費
Pages無限請求/帶寬靜態站點託管
Tunnel無限內網穿透零開放端口
Zero Trust50 用戶免費訪問控制/SaaS 代理

💡 結論:個人項目幾乎可以全程用免費版,付費版(Pro $20/月)主要增加 WAF 自定義規則、Bot 防護和圖像優化。


二、域名接入與 DNS

接入方式(推薦 NS 改派)

  1. 在 Cloudflare 添加站點,輸入你的域名(如 example.com)。
  2. 複製 Cloudflare 提供的 兩條 NS 記錄(如 candy.ns.cloudflare.com)。
  3. 到你的域名註冊商後臺,把 NS 改成 Cloudflare 的。
  4. 等待 24-48 小時全球生效(通常幾小時內)。

常用 DNS 記錄

類型用途示例
A域名指向 IPv4@ → 1.2.3.4
AAAA域名指向 IPv6@ → 2001:db8::1
CNAME別名(指向另一個域名)www → example.com
MX郵件服務器配郵件服務用
TXT驗證/SPF/DKIM域名所有權驗證
CNAME 扁平化根域用 CNAMECF 獨有特性

橙色雲(Proxy)原理

每條記錄右側有個雲朵圖標:

  • 橙色(Proxied):流量走 CF 邊緣,隱藏真實 IP、啟用 CDN 和防護。
  • 灰色(DNS only):僅做解析,直連源站(不 hides IP、不緩存)。

⚠️ 郵件相關記錄(MX)不要開橙色代理,否則郵件會出問題。


三、CDN 與緩存加速

緩存原理

CF 對靜態資源(圖片、CSS、JS、字體)默認緩存。動態內容(HTML/API)默認不緩存,可用 Cache Rules 自定義。

緩存規則實戰

場景規則效果
全站靜態站匹配 /*,邊緣 TTL 1 天VitePress/Hugo 整站加速
圖片目錄匹配 /images/*,TTL 1 月圖床省流量
跳過 API匹配 /api/*,緩存繞過動態不緩存

關鍵優化項

  • 開發模式(Development Mode):臨時繞過緩存 3 小時,調試改完即關。
  • Brotli 壓縮:Speed → Optimization 開啟,比 Gzip 再小 15-20%。
  • HTTP/3 (QUIC):默認開啟,移動端提速明顯。
  • Auto Minify:可選壓縮 HTML/CSS/JS(現代站點多已自己壓縮,謹慎開避免衝突)。

四、SSL/TLS 證書配置

四種加密模式

模式說明適用
Off全程不加密❌ 不推薦
Flexible瀏覽器→CF 加密,CF→源站不加密源站無證書時臨時
Full兩端都加密,但 CF 不驗證源站證書源站有自簽證書
Full (Strict)兩端加密 + CF 驗證源站證書✅ 推薦

Origin Certificate(源站證書)

在 Strict 模式下,源站需要一個 CF 簽發的證書(15 年有效、僅 CF 信任):

  1. SSL/TLS → Origin Server → Create Certificate。
  2. 下載證書和私鑰,配到 Nginx/Caddy。
  3. 加密模式選 Full (Strict)

✅ 這樣即使有人直接訪問你的源站 IP,也看不到真實內容(且被 CF 隱藏)。


五、R2 對象存儲:S3 平替 + 圖床

R2 vs S3 核心差異

維度Cloudflare R2AWS S3
出口流量費免費按量收費(貴)
存儲價格$0.015/GB/月$0.023/GB/月
免費額度10 GB
兼容 APIS3 兼容原生
綁定 CDN原生零延遲需額外配 CloudFront

圖床/靜態資源實戰

  1. R2 → Create bucket(如 my-blog-images)。
  2. 開啟 Public access 或用 workers.dev 域名訪問。
  3. 把文章圖片傳到 R2,引用 https://img.example.com/xxx.webp
  4. 配一個 img. 子域 CNAME 到 R2,開橙色代理即享受全球 CDN。

💡 本站圖片資源就部分託管在 R2,配合 WebP 格式,月流量零成本。


六、Cloudflare Pages 靜態部署

工作流

  1. Pages → Connect to Git → 選 GitHub 倉庫。
  2. 設置構建命令和輸出目錄(如 VitePress:pnpm build.vitepress/dist)。
  3. 每次 push 自動構建,分配 *.pages.dev 預覽地址。
  4. 自定義域名綁定,自動簽發證書。

框架預設

Pages 內置 VitePress、Next.js、Hugo、Astro、Vue/React 等預設,無需手寫構建配置。

與 R2 搭配:構建產物放 Pages,大圖放 R2,整站零服務器成本。


七、Cloudflare Tunnel 內網穿透

如果你有家庭寬帶/內網服務想暴露到公網,Tunnel 比 frp/ngrok 更省心

  • 無需公網 IP、無需開放任何端口。
  • 源站 IP 完全隱藏(流量經 CF 邊緣)。
  • 免費、穩定、自帶 HTTPS。

部署步驟(已在前文單篇詳解):

bash
# 1. 安裝 cloudflared
brew install cloudflare/cloudflare/cloudflared

# 2. 登錄並創建隧道
cloudflared tunnel login
cloudflared tunnel create my-tunnel

# 3. 配置 ~/.cloudflared/config.yml
# tunnel: my-tunnel
# credentials-file: /root/.cloudflared/xxx.json
# ingress:
#   - hostname: service.example.com
#     service: http://localhost:8080
#   - service: http_status:404

# 4. 綁定域名並啟動
cloudflared tunnel route dns my-tunnel service.example.com
cloudflared tunnel run my-tunnel

八、Zero Trust 與 WAF 防護

Zero Trust 訪問策略

免費 50 用戶,可給內網服務加一層登錄鑑權:

  • 路徑:Zero Trust → Access → Applications。
  • 設置「只有特定郵箱/國家/IP 能訪問」你的後臺(如 Grafana、phpMyAdmin)。
  • 即使服務端口對外開放,沒有 CF 登錄也進不去。

WAF 與速率限制

功能用途
託管規則集一鍵防 SQL 注入/XSS/惡意 UA
自定義規則按國家/UA/IP 攔截(免費版有限)
Rate Limiting防 CC/刷接口(付費版更靈活)
Bot 防護區分人與爬蟲(Pro 以上)

💡 個人站點免費版開啟「託管規則集」+ 關閉不必要的端口,已能擋掉 90% 掃描。


九、本站實踐:VitePress + 圖床

本站 y-m.top(VitePress 構建)的實際架構:

  1. DNS + CDN:域名 NS 改派 CF,全站橙色代理,HTML 用 Cache Rule 緩存,靜態資源全球加速。
  2. SSL:源站 Nginx 配 CF Origin Certificate,加密模式 Full (Strict)。
  3. 圖床:文章圖片上傳 R2(WebP),img.y-m.top CNAME 到 R2 並開 CDN。
  4. 部署:GitHub Actions 構建 VitePress → 推送 Pages / 或 CF Pages 自動構建。
  5. 監控:節點暴露給 Prometheus,經 Tunnel 走 CF 隱藏源站(見下文延伸)。

這一套組合讓本站實現了「零服務器月租 + 全球訪問快 + 源站 IP 隱藏」。


十、常見問題 FAQ

改了 NS 後網站打不開 / 郵箱收不到?

檢查:① NS 是否完全替換為 CF 兩條;② MX 記錄是否誤開橙色代理(應灰色);③ DNS 記錄是否完整遷移(原服務商的所有 A/CNAME/MX 都要在 CF 重建)。

緩存不更新,改了內容還是舊的?

Development Mode 臨時繞過;或在 Caching → Configuration 點「Purge Everything」清全站緩存;也可以用 Cache Rules 給動態路徑設「No-cache」。

源站 IP 會不會被暴露?

只要相關記錄開橙色代理 + 不開任何灰色直連記錄指向源站,CF 會隱藏真實 IP。注意:Tunnel 方式根本不暴露端口,更安全。仍可配合「僅允許 CF 邊緣 IP 訪問源站 80/443」的防火牆規則雙重保險。

R2 真的沒有出口流量費嗎?

對,R2 不收出口流量費(這是相比 S3 最大的優勢),只收存儲和請求費。適合圖床、靜態分發等讀多寫少場景。A 類/B 類請求有免費額度,超限很便宜。

免費版限速嚴重嗎?影響正常訪問嗎?

正常訪問不受影響。限速主要針對「異常高頻請求」和「部分高級功能(如某些 WAF 規則、Bot 防護)」。普通博客/個人站免費版完全夠用。

Pages 和 Netlify/Vercel 怎麼選?

三者都是優秀靜態託管。Pages 優勢是與 CF 生態(R2/DNS/Tunnel)無縫打通、國內訪問通常更穩;Netlify/Vercel 在 DX 和邊緣函數上更成熟。本站因已用 CF,選 Pages 最省事。

Tunnel 和直接開放端口,哪個更好?

Tunnel 更好:零開放端口、源站 IP 隱藏、自帶 HTTPS、不怕家寬無公網 IP。唯一前提是依賴 CF 網絡(CF 掛了你也掛)。關鍵服務建議 Tunnel + 備用公網端口雙保險。

如何確認 SSL 處於 Strict 模式且證書有效?

SSL/TLS → Overview 確認模式為 Full (Strict);源站配好 Origin Certificate;用 curl -vI https://你的域名 看證書籤發者為 "Cloudflare Inc ECC CA",且直接訪問源站 IP 應被拒或顯示 CF 證書。


延伸閱讀



延伸阅读

免责声明

本文仅供技术交流和学习参考。涉及第三方服务的链接可能包含 sponsored 标记,请自行核实服务条款、价格和可用性,并遵守当地法律法规。

最後更新於: