← 返回提取工具
部署到 Cloudflare Pages
已为你生成好可直接上传的发布包:pages-dist.zip(约 250KB, zip 根目录就是 index.html + _worker.js,共 29 个文件)。上传后不会再 404, 且全程不需要 KV、D1、数据库和环境变量。
下载 pages-dist.zip(Cloudflare 发布包)从当前预览服务直接下载,拿到后去 Cloudflare 上传即可。
- zip 根目录即网站根目录:index.html 与 _worker.js 同级,共 29 个文件,无嵌套。
- _worker.js 以高级模式接管 /api/*,其余请求回落到静态资源。
- 不要用控制台拖拽上传 functions/ 文件夹 —— 官方不支持编译,会导致 /api 404。
1方式 A:控制台拖拽上传(最简单)
下载下面的 pages-dist.zip,直接拖到 Cloudflare 控制台 Workers & Pages → Create → Pages → Upload assets。注意:上传这个 zip 本身,不要上传项目文件夹,也不要解压后再套一层文件夹。
2方式 B:Wrangler 命令行
解压或使用 pages-dist 文件夹,运行 npx wrangler pages deploy pages-dist 即可。需要先 wrangler login。
3方式 C:Git 集成
Framework preset 选 None,Build command 填 node scripts/build-pages.mjs,Build output directory 填 pages-dist,不需要任何环境变量。
404 排查(之前失败的两个常见原因)
- 上传了项目根目录或 out 文件夹本身 → index.html 被套进子目录 → 全站 404。必须上传 pages-dist.zip 本身。
- 用控制台拖拽上传了带 functions/ 的项目 → 拖拽不支持编译 Functions → /api/* 404。本包已改用根目录 _worker.js。
- 部署后用旧域名/旧预览链接访问 → 看到还是旧版本。去 Pages → Deployments 打开最新一次部署的域名。
404 自检命令
# zip 根目录必须直接看到这两个文件 unzip -l pages-dist.zip | grep -E "index.html|_worker.js" # 本地模拟 Pages 上传后的真实运行 npx wrangler pages dev pages-dist --port 8788 curl -s http://127.0.0.1:8788/api/health