Sink 是一款专为开发者设计的轻量级短链接缩短服务。该项目 100% 运行在 Cloudflare 生态系统内,无需配置外部服务器,通过 Cloudflare KV 提供存储,并利用 Cloudflare 的全球边缘节点实现秒级跳转。其内置的详细数据分析与 AI 别名生成功能,使其成为个人站长进行流量统计与链接管理的理想工具。

核心技术特性

  • 边缘计算架构:完全托管于 Cloudflare Workers,零服务器运维成本。
  • 分布式 KV 存储:利用 Cloudflare KV 实现高速读写,支持自定义别名与区分大小写。
  • 数据分析引擎:内置精细化统计,支持访客地理位置、访问趋势及来源分析。
  • AI 智能化集成:支持利用 AI 自动生成短链接后缀(Slug),简化管理流程。
  • 灵活控制:支持设置链接过期时间,增强数据安全性。
  • API 接口支持:原生支持集成,方便接入现有工作流。

部署与初始化指南

第一步:准备环境

  1. Fork 仓库:前往 Sink GitHub 官方仓库 并将其 Fork 到您的 GitHub 账户。
  2. 创建 KV 命名空间:在 Cloudflare 控制台的 Workers 和 Pages -> KV 页面中创建一个新空间,并复制其 命名空间 ID
  3. 更新配置:将复制的 ID 更新至代码仓库的 wrangler.jsonc 文件中。

第二步:创建 Worker 项目

  1. 在 Cloudflare 面板中新建一个 Worker 项目。
  2. 选择您的 Sink 仓库作为部署来源,并配置以下构建指令:
    • 构建命令pnpm run buildnpm run build
    • 部署命令npx wrangler deploy

第三步:配置环境变量

项目部署后,进入 Worker 的 设置 -> 变量和密钥 页面,添加以下必要参数:

变量名称说明
NUXT_SITE_TOKEN访问控制面板的授权令牌(至少 8 位字符)
NUXT_CF_ACCOUNT_ID您的 Cloudflare 账户 ID
NUXT_CF_API_TOKEN具有 Account Analytics 权限的 API 令牌

第四步:启用分析引擎

为了确保统计功能正常运行,请进入 Cloudflare Workers 和 Pages 页面右侧的 分析引擎(Analytics Engine) 选项,点击 设置 并启用免费层级。完成后重新部署项目即可生效。


使用建议

  • 安全性NUXT_SITE_TOKEN 是您后台管理的唯一凭证,请务必设置强密码并妥善保管。
  • 性能优化:由于 Sink 完全依赖 Cloudflare 全球网络,建议绑定自定义域名,以获得更好的访问延迟与品牌一致性。
  • 扩展性:Sink 的开源性质使其非常适合二次开发,您可以根据需求进一步自定义分析页面的展示逻辑。

在部署过程中,针对 NUXT_CF_API_TOKEN 的权限配置,如果您在获取特定权限时遇到障碍,建议参考 Cloudflare 的官方 API 管理文档 进行确认。