Skip to content

Cloudflare Pages 部署指南:选择 Git integration、Direct Upload 或 C3

Cloudflare Pages 适合把前端源代码或已经生成的静态产物发布到 Cloudflare。官方入门页提供 Git integration、Direct Upload 和 C3 CLI 三条路径。选择路径时先看项目的交付方式:需要每次推送自动构建就选 Git integration;已经有稳定构建产物就选 Direct Upload;从零创建新项目可以选 C3。

前置条件

  • 一个 Cloudflare 账户。
  • Git integration 需要 GitHub 或 GitLab 仓库及可运行的构建命令。
  • Direct Upload 需要本地已经生成的静态输出目录。
  • C3 CLI 需要 Node.js 和可用的 Cloudflare 登录流程。
  • 明确框架的构建命令和输出目录,例如 npm run builddist;不同框架的目录可能是 buildout 或其他路径。

部署路径

Git integration

在 Cloudflare Dashboard 创建 Pages 项目并连接 GitHub 或 GitLab 仓库,选择生产分支,填写构建命令、输出目录和构建环境变量。之后每次推送都会触发新的构建。Pull Request 或分支预览适合在绑定生产域名前检查页面。

Direct Upload

本地执行项目的构建命令,确认输出目录只包含准备公开的静态文件,然后在 Pages 项目中选择 Direct Upload 上传该目录。这个模式不会自动读取源码仓库,构建和产物保存责任在执行上传的一方。

C3 CLI

C3 适合创建新的 Pages 项目或从命令行开始配置。先阅读 Pages C3 CLI 文档,确认项目模板、输出目录和登录方式,再按文档生成项目。C3 的创建流程不等于生产发布;域名、环境变量和缓存策略仍需要单独验收。

Mermaid 流程图
查看源码
flowchart TD
    A[前端源代码] --> Q{已有稳定构建产物?}
    Q -->|是| D[Direct Upload]
    Q -->|否| R{需要推送自动构建?}
    R -->|是| G[Git integration]
    R -->|否 / 新项目| C[C3 CLI]
    G --> B[构建命令 + 输出目录]
    C --> B
    D --> P[Pages 项目预览地址]
    B --> P
    P --> V[绑定域名并验收]

配置与绑定

Pages 的构建配置至少要记录:源码仓库、生产分支、构建命令、输出目录、Node.js 版本和构建环境变量。不要把 API Token、数据库密码或其他 Secret 写入仓库或普通环境变量;需要保密的值应使用 Pages 的 Secret 配置或受控 CI Secret。

Pages 静态部署本身不需要 KV、D1 或 R2 绑定。如果前端通过 Workers Functions、API 或其他后端访问这些资源,应把后端绑定和数据迁移写入独立的 Workers 部署文章,并说明跨环境的资源名称。

验收

文档级部署完成后,至少应检查:

  1. Dashboard 中的构建记录状态为成功,并能看到对应提交或上传批次。
  2. 预览地址能够返回页面,静态资源路径没有 404。
  3. SPA 项目刷新深层路由时不会错误回源;需要重写时记录实际配置。
  4. 绑定自定义域名后,DNS、HTTPS 证书、缓存和访问控制符合预期。
  5. 使用 curl -I https://<preview-or-domain> 检查响应状态和缓存相关响应头。

以上是验收清单,不代表本篇已经执行 Pages 构建或远程发布;当前文章验证等级为 documented

回滚边界

  • Git integration 回滚应回到已知可用的提交或重新触发该提交的构建。
  • Direct Upload 必须保留每次上传对应的构建产物和版本说明,否则无法可靠重建旧版本。
  • 自定义域名、DNS 和缓存配置与构建产物是两个边界;回滚页面版本不会自动回滚 DNS 或缓存策略。
  • 如果页面依赖外部 API、Workers 或数据库,页面回滚不能自动恢复 API 代码和数据 schema,必须分别制定兼容和回滚顺序。

参考资料

全部公开文章由同一个站点构建和发布。