393 字
2 分钟
解决Cloudflare Pages部署纪录过多导致无法删除项目的问题

需要删除一个部署在 Cloudflare Pages 上的项目,但总是提示错误,错误信息是

Your project has too many deployments to be deleted, follow this guide to delete them: https://cfl.re/3CXesln。

原因#

因为部署太多,导致无法删除,我测试得知,基本超过 100 次部署就会有这个问题。

解决#

需要删除过的部署,让数量控制在 100 个之内即可

方法一:直接手动删除#

如果部署的次数比 100 多不多少,就手动删除一些,将部署的内容控制在 100 个之内即可删除项目了。

方法二:使用 Cloudflare API 删除部署#

先要获取一些基本信息:

  • Account ID:仪表盘 -> 账户
  • Project Name:Pages 里这个项目的名称
  • API Token:个人资料 -> API Token,注意给 Pages 的相关权限

通过终端列出所有的部署

curl -X GET "https://api.cloudflare.com/client/v4/accounts/{account_id}/pages/projects/{project_name}/deployments" \
-H "Authorization: Bearer {api_token}"

对应找到每个部署的 ID,然后删除(最好不要,能到这里就是因为部署量大,要批量删除)

curl -X DELETE "https://api.cloudflare.com/client/v4/accounts/{account_id}/pages/projects/{project_name}/deployments/{deployment_id}" \
-H "Authorization: Bearer {api_token}"

用脚本批量删除(下面脚本只是一个参考)

#!/bin/bash
ACCOUNT_ID="your_account_id"
PROJECT_NAME="your_project_name"
API_TOKEN="your_api_token"
# 获取所有部署 ID
DEPLOYMENTS=$(curl -s -X GET "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/pages/projects/$PROJECT_NAME/deployments" \
-H "Authorization: Bearer $API_TOKEN" | jq -r '.result[].id')
# 遍历并删除每个部署
for DEPLOYMENT_ID in $DEPLOYMENTS; do
echo "Deleting deployment: $DEPLOYMENT_ID"
curl -X DELETE "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/pages/projects/$PROJECT_NAME/deployments/$DEPLOYMENT_ID" \
-H "Authorization: Bearer $API_TOKEN"
sleep 1 # 添加延迟以避免 API 速率限制
done

最后可以通过命令行直接删除项目,也可以去 Cloudflare 的面板去删除项目。

参考文档#

Cloudflare 官方的文档:https://cfl.re/3CXesln

解决Cloudflare Pages部署纪录过多导致无法删除项目的问题
https://blog.leuxx.de/posts/35/
作者
Leu
发布于
2026-06-28
许可协议
CC BY-NC-SA 4.0