摘要:个人主页、文档站、落地页不一定要买云主机。本文按官方文档对比 GitHub Pages 与 Cloudflare Pages:适用场景、自定义域名与 HTTPS、构建与流量限制、何时该换成付费轻量云或宝塔。只放官网链接,不硬推。

个人博客、项目文档、产品落地页,如果主要是 HTML / CSS / JS(或构建后变成静态文件),不一定要先买一台云服务器再装面板。两条常见的免费静态托管路径是 GitHub Pages 和 Cloudflare Pages。它们都把文件发布到全球可访问的站点,自带 HTTPS,也能绑自己的域名;差别在「和 Git 怎么接」「免费额度卡在哪」「适不适合以后加一点动态逻辑」。

结论先放前面:仓库已经在 GitHub、内容偏文档/项目页 → 先试 GitHub Pages;要全球加速感、预览部署、和 Cloudflare DNS/CDN 一套打通 → 更看 Cloudflare Pages。站点要跑 WordPress、需要数据库或长期写文件,还是回到轻量云主机更合适。

查询日期:2026-10-03。限额、套餐与产品命名以官方文档为准;Cloudflare 文档近期也会提示部分场景可改用 Workers,下文单独说明。本文没有联盟链接。

它们分别是什么

GitHub Pages 是 GitHub 提供的静态站点托管:从仓库取出 HTML/CSS/JS(可选经过构建),发布成网站。官方文档写明:可用于个人、组织或项目站点;GitHub Free 上的公开仓库可用,私有仓库需要 Pro / Team / Enterprise 等付费计划。

静态网站免费托管:GitHub Pages 与 Cloudflare Pages 怎么选-有序
GitHub Docs《What is GitHub Pages?》:静态托管定义与套餐可用性

*图:GitHub 官方文档对 Pages 的定义与「谁能用」说明。来源:docs.github.com。*

发布源可以是指定分支,也可以用 GitHub Actions 工作流(官方《Configuring a publishing source》)。

静态网站免费托管:GitHub Pages 与 Cloudflare Pages 怎么选-有序
GitHub Docs:配置 Pages 发布源(分支或 Actions)

*图:发布源配置说明。来源:docs.github.com。*

Cloudflare Pages 把站点部署到 Cloudflare 全球网络,支持连接 Git 提供商、直接上传预构建资源,或用命令行工具创建项目。文档首页写明 Available on all plans(各套餐可用),并列出 Pages Functions(边缘上的服务端逻辑)与一键回滚等能力。

静态网站免费托管:GitHub Pages 与 Cloudflare Pages 怎么选-有序
Cloudflare Pages 文档首页:部署方式与 Functions / Rollbacks

*图:Cloudflare Pages 概览(查询日文档亦提示部分新项目可考虑 Workers)。来源:developers.cloudflare.com。*

注意:Cloudflare 文档顶部有提示——Workers 已覆盖多数 Pages 用例且功能面更广,建议部分新项目直接从 Workers 起步。若你只是发纯静态站,Pages 仍然够用;若计划大量边缘逻辑、要和 Workers 生态深度整合,建站前先读一遍该提示,避免半年后再迁一次。

并排对比(按官方公开限额)

下面数字均来自查询日的官方 limits 文档,软限制意味着超了可能被降速、收到邮件提醒或暂时无法提供服务,不要当成「永远保证的硬承诺」。

维度GitHub Pages(官方 limits)Cloudflare Pages(Free 档示例)
典型用途项目文档、个人/组织主页、教学静态站落地页、前端静态站、需预览部署与全球边缘分发的站
仓库可见性Free:公开仓库;私有仓需付费计划可连接公开或私有 Git 仓(以仪表盘权限为准)
站点体量建议源仓 ≤1 GB;已发布站点 ≤1 GBFree:单站最多约 20,000 个文件;单文件 ≤ 25 MiB
构建部署超过约 10 分钟会超时;软限制约 10 次构建/小时(自定义 Actions 工作流不受该构建次数软限制)Free:每月约 500 次构建、1 路并发;构建约 20 分钟超时
流量软限制约 100 GB/月 带宽走 Cloudflare 网络;具体计费项以当前套餐与 Workers/流量说明为准(静态资源场景通常远宽于个人小站)
自定义域名支持;可配置 HTTPS支持;Free 单项目自定义域名额度文档示例为 100
HTTPS官方支持为 Pages 站点启用 HTTPS接入 Cloudflare 后常规为访客提供 HTTPS
动态能力本质静态;动态需外接 API / 第三方Pages Functions(额度计入 Workers 相关配额)
账号侧项目数每账户仅 1 个 user/org 级站点;另可有多个 project 站账户约 100 个 Pages 项目上限(文档称不常提高)

域名解析基础(A / CNAME / TTL)可先看本站域名解析入门;已经在用 Cloudflare 做 CDN 的站,可对照Cloudflare 免费 CDN 与 SSL。

静态网站免费托管:GitHub Pages 与 Cloudflare Pages 怎么选-有序
Cloudflare Pages《Custom domains》:在项目里添加自定义域名

*图:Pages 项目「Custom domains」添加步骤。来源:developers.cloudflare.com(页面标注更新于 2026-04-21)。*

怎么选:对号入座

你的情况更合适的起点
开源项目 README 想变成文档站,仓库已在 GitHubGitHub Pages(或 Docs 生成器 + Pages)
只要一个 username.github.io 个人页GitHub Pages(每账户一个 user 站)
域名 NS 已经在 Cloudflare,想预览每个 PR 的部署Cloudflare Pages
构建很勤(一天推很多次)看构建次数:GitHub 的「每小时 10 次」软限制 vs Cloudflare Free「每月 500 次」;高频可改 Actions 自建或升档
单文件很大(视频、安装包)两边都不适合当网盘;大文件放到对象存储 / R2 等,站点只放页面
需要登录、评论、数据库、后台不是静态托管主场 → 轻量云 + WordPress 或自己的后端,见轻量应用服务器搭建 WordPress
要可视化管多站点、证书、备份云主机 + 宝塔面板要不要装 或纯命令行 + 免费 HTTPS 证书自动续期

自定义域名与 HTTPS:两边都能做,细节不同

GitHub Pages

  1. 在仓库 Settings → Pages 选好发布源。
  2. 按官方「Configure a custom domain」添加域名,并在域名 DNS 里写好 A / AAAA 或 CNAME(以文档当前表格为准)。
  3. 勾选 Enforce HTTPS(DNS 生效且证书签发完成后才可用)。
  4. 若站点走 CDN 或中间代理,注意证书与「源站」关系,避免混合内容。

Cloudflare Pages

  1. 打开 Workers & Pages → 你的项目 → Custom domains。
  2. 按文档添加apex 或子域;域名若已在 Cloudflare,验证通常更顺。
  3. SSL/TLS 加密模式与全站 CDN 规则,和普通用 Cloudflare 代理域名时类似,可参考本站 CDN/SSL 文,按「访客 HTTPS」目标选模式。
  4. 文档提醒:已知问题与删除自定义域名的步骤以 Custom domains 页为准。

无论哪边,域名年费、备案(若目标访客在中国大陆)都不在「免费托管」里。大陆访客访问、ICP 备案要求与服务器所在地有关:纯海外静态托管解决不了「必须备案才能用国内服务器」的问题,只是你的站可能暂时只服务海外或走别的合规路径——这点和选 Pages 还是买国内轻量云是两件独立的事。

构建限制踩坑清单

  1. 别把 Pages 当网盘或电商后台:GitHub 明文写 Pages 不适合主要用来做在线交易、SaaS 商业主机或传递密码/信用卡等敏感交易;滥用可能被停服。
  2. 构建超时:GitHub 约 10 分钟、Cloudflare 约 20 分钟——依赖安装过重时,改成预构建再上传,或精简依赖。
  3. 文件数量与单文件大小(尤其 Cloudflare Free 的 20k 文件 / 25 MiB):图片过多时先压缩、外链到对象存储。
  4. 软带宽与速率限制:GitHub 约 100 GB/月软上限;突发流量可考虑前面再加 CDN(GitHub 文档也提到可用第三方 CDN)。
  5. 密钥:任何 API_KEY、.env 不要推进公开仓库;需要服务端密钥时,改用 Functions/Workers 的密钥配置或真正的后端。

什么时候该上付费云主机

出现下面任一情况,免费静态托管往往开始别扭,不如直接上轻量云或容器:

  • 要装 WordPress、论坛、带数据库的 CMS;
  • 需要用户上传、服务端渲染强依赖、定时任务写本地盘;
  • 构建次数、文件数或带宽经常顶满免费档;
  • 合规上必须把源站放在特定地区并完成备案与等保评估;
  • 你希望用面板统一管 Nginx、证书、备份(见网站定期备份)。

静态站也可以「Pages 放前端 + 云主机放 API」拆开,但那是架构选型,不是「免费托管能扛一切」。

一句话总结

GitHub Pages 适合「代码已在 GitHub 的文档型静态站」,规则清晰、和仓库权限绑定紧;Cloudflare Pages 适合「要边缘分发、预览部署、和 Cloudflare DNS 一体」的静态/轻全栈前端。两者都能绑域名、开 HTTPS;都不是 WordPress 主机,也不是无限网盘。先按上表对号,限额以官网为准,超了再迁轻量云不迟。

风险与免责

免费额度、产品名(Pages / Workers)与构建规则会调整;操作域名 DNS 前请确认你有域名管理权,改错 NS/解析可能导致整站不可访。本文不构成采购或架构承诺。

相关阅读

来源与查询日期