# 22 - Cloudflare Pages HTML 发布层方案

更新时间：2026-05-29 Asia/Shanghai

## 1. 一句话结论

```text
Cloudflare Pages 适合作为本项目的 HTML 发布层。
```

Notion 继续作为 Partner Portal，用于同步研究、评论和伙伴分工。Cloudflare Pages 只负责让 HTML 图谱和专题页可以被伙伴稳定浏览。

## 2. 为什么引入 Cloudflare Pages

Notion 的优势是协作和同步，但不适合直接托管本项目已有的 HTML/CSS/JS 交互页面。

Cloudflare Pages 的优势：

- 适合静态 HTML/CSS/JS。
- 可以通过 Direct Upload 上传预构建静态文件。
- 也可以通过 Git 集成自动构建和部署。
- 对当前项目不需要后端。
- 很适合发布 Cytoscape 知识图谱和专题 HTML 页面。

## 3. 当前架构

```text
本地 Markdown/HTML = Source of Truth
Notion = Partner Portal / 讨论层
Cloudflare Pages = HTML 发布层
NotebookLM = Research Copilot，后续按需
```

## 4. 已创建本地发布目录

本地目录：

```text
../site/
```

用途：只放可共享的 HTML 页面和入口页，避免把整个项目根目录发布出去。

已创建：

- `../site/index.html`：HTML 共享入口
- `../site/_headers`：基础响应头，包含 `X-Robots-Tag: noindex, nofollow`
- `../scripts/build-cloudflare-pages-site.sh`：重新生成发布目录的脚本

## 5. 为什么不直接发布项目根目录

不发布根目录，原因是：

- 根目录未来可能出现敏感资料。
- `research/` 下的 Markdown 是源仓库，不一定都适合公开。
- Cloudflare Pages 默认会把发布目录中的静态文件变成可访问资产。
- 用 `site/` 作为白名单发布目录，更安全、更可控。

## 6. 当前可发布页面

- 项目知识图谱
- 国家/地区支付习惯数据地图
- 独立站支付接入商基准对比
- 支付资质地图
- 支付方式与费率深挖
- 美国公司设立与税务预检
- 美国公司触发条件决策树
- 营业额梯度触发权重模型
- 独立站与平台对比
- 创业伙伴研究共享方案
- 共享层策略与 HTML 发布判断

## 7. 部署方式 A：Direct Upload

适合第一轮试运行。

步骤：

1. 本地运行 `scripts/build-cloudflare-pages-site.sh` 生成 `site/`。
2. 登录 Cloudflare Dashboard。
3. 进入 Workers & Pages。
4. Create application。
5. 选择 Pages / Upload assets 或 Direct Upload。
6. 上传 `site/` 文件夹。
7. 获得 `*.pages.dev` 链接。
8. 把链接贴回 Notion 伙伴入口页。

优点：不用 GitHub，不需要自动部署，适合先试。

缺点：每次更新需要重新上传。

## 8. 部署方式 B：Git 集成

适合后续稳定维护。

步骤：

1. 将项目推到 GitHub 私有或公开仓库。
2. Cloudflare Pages 连接 GitHub repository。
3. Build command 留空或使用脚本。
4. Build output directory 设置为 `site`。
5. 每次更新 HTML 后，运行构建脚本并提交 `site/`，或后续改成构建时自动生成。

优点：持续部署，预览部署，长期维护方便。

缺点：需要 GitHub 仓库和权限配置。

## 9. 访问控制提醒

当前 `noindex` 只是告诉搜索引擎不要索引，不是访问控制。

如果内容只能给少数伙伴看：

- 不要公开敏感内容。
- 链接只发给可信伙伴。
- 后续可研究 Cloudflare Access 或其他身份访问控制。
- 或者只发布脱敏摘要，把敏感讨论留在 Notion 私有页面。

## 10. 当前决策

```text
引入 Cloudflare Pages 作为 HTML 发布层。
先采用 site/ 白名单发布目录。
暂不发布敏感资料。
第一轮可以用 Direct Upload。
稳定后再考虑 Git 集成自动部署。
```

## 11. 证据入口

- Cloudflare Pages: https://pages.cloudflare.com/
- Static HTML / deploy anything: https://developers.cloudflare.com/pages/framework-guides/deploy-anything/
- Git integration guide: https://developers.cloudflare.com/pages/get-started/git-integration/
- Build configuration: https://developers.cloudflare.com/pages/configuration/build-configuration/
- Cloudflare Pages limits: https://developers.cloudflare.com/pages/platform/limits/
