你是否正为冗长复杂的链接而烦恼,它们不仅难以记忆,分享起来也颇为不便?是否渴望拥有一个完全自主掌控、彰显个性的短链接服务?现在,借助强大的开源项目 [Sink]
,这一切都将变得简单易行。更令人兴奋的是,你可以免费将 Sink 部署在高性能、高可靠的 [Cloudflare Pages ]平台上,享受闪电般的访问速度和坚如磐石的服务稳定性。
为何选择 Cloudflare Pages 部署 Sink 短链接?
- 免费 SSL 证书: Cloudflare Pages 自动提供免费的 SSL 证书,确保你的短链接服务通过 HTTPS 加密连接,这不仅提升了安全性,也是现代 SEO 的基本要求。
 - 全球 CDN 加速: Cloudflare 的全球内容分发网络 (CDN) 将你的短链接服务缓存到全球各地的服务器上,使用户能够就近访问,显著提升加载速度,这对于用户体验和搜索引擎排名都至关重要。
 - 强大的基础设施: Cloudflare 的强大基础设施保证了服务的稳定性和高可用性,减少因服务器故障导致的链接失效,提升用户信任度和 SEO 表现。
 - 静态站点托管优势: Sink 本身是一个可以便捷部署为静态站点的应用,Cloudflare Pages 对静态站点的优化非常出色,能够提供快速且高效的服务。
 

前提条件:
在开始部署你的专属短链接服务之前,请确保你已准备好以下账号和工具:
- 一个活跃的 GitHub 账号: 用于存储和管理 Sink 项目的源代码。
 - 一个已注册并完成配置的 Cloudflare 账号: 用于部署和管理你的短链接服务。
 
部署实战:一步步在 Cloudflare Pages 上搭建 Sink
第一步:Fork Sink 开源项目
前往 Sink 的 GitHub 官方仓库 https://github.com/ccbikai/Sink。点击页面右上角的 “Fork” 按钮,将该项目完整复制到你自己的 GitHub 账号下。这是你进行后续操作的基础。

第二步:连接 Cloudflare Pages 并进行部署
这一步是核心部署过程,我们将深入讲解如何将 Forked 仓库与 Cloudflare Pages 连接,并配置必要的环境变量和绑定。
- 登录 Cloudflare 仪表盘并创建新项目:
- 访问 Cloudflare 仪表盘并登录你的账号。
 - 在左侧导航栏中,点击 “Workers & Pages“,然后选择 “Pages“。
 - 点击 “Create a project” 按钮,开始一个新的 Pages 项目创建流程。
 
 
- 连接 GitHub 仓库:
- 选择 “Connect to Git provider“,然后点击 “GitHub“。
 - 按照提示授权 Cloudflare Pages 访问你的 GitHub 账号。
 - 在仓库列表中,找到你之前 Fork 的 
Sink仓库,点击 “Select“。 
 

- 配置构建设置和环境变量:
- 在 “Set up build and deployment” 页面,首先配置基本构建信息:
- Framework preset: 选择 “Nuxt.js“。
 
 
 - 在 “Set up build and deployment” 页面,首先配置基本构建信息:
 

- 接下来,配置环境变量 (Environment variables)。这是至关重要的一步,因为 Sink 服务依赖这些变量来存储数据和进行认证。
- 点击 “Environment variables“,然后添加以下变量:
NUXT_SITE_TOKEN:这是你访问 Sink 后台管理界面的令牌。必须设置一个至少包含 8 个字符的强密码,请务必妥善保管。NUXT_CF_ACCOUNT_ID:这是你的 Cloudflare 账号 ID。你可以在仪表盘右侧边栏的 “Account details” 中找到它。NUXT_CF_API_TOKEN:为了让 Sink 能够与你的 Cloudflare 资源进行交互,你需要创建一个具有相应权限的 API 令牌。
 
 - 点击 “Environment variables“,然后添加以下变量:
 

- 访问 Cloudflare 仪表盘,点击进去一个域名。在右边下拉找到我们需要的账户ID和创建API。
 

- API令牌模板选择阅读分析数据和日志
 

- 选择 “Create Custom Token“,给令牌起一个名字(如 
Sink-API),账户资源选择你的账户。 

- 保存并部署:
- 完成所有配置后,点击 “Save and Deploy” 按钮。Cloudflare Pages 将启动你的项目构建和部署流程。
 
 - 兼容性标志
 

- 在设置里,运行时找到兼容性标志输入 
nodejs_compat。 - 此标志对于一些 Node.js 兼容性库至关重要,确保 Sink 可以在 Workers 环境中正确运行。
 
- 配置绑定 (Bindings) – KV、AI 和 Analytics Engine:
- 首次部署成功后,你需要进入项目的 “Settings” 页面,导航至 “Functions” -> “Bindings“。
 - 在这里,你需要将 Cloudflare 提供的服务与你的项目变量进行绑定。
 - KV 命名空间:
- 先去存储与数据库中创建一个kv命名空间。
 - 命名空间名称: 输入sink-kv(随便输入)。
 - 在设置中绑定选择kv命名空间,找到我们刚才创建好的kv命名空间,变量名称选择KV(必须是大写的KV)。
 
 
 

- 此绑定将用于 Sink 存储短链接的元数据。
 - Workers AI (可选):
- 如果你想使用 AI 功能,点击 “Add binding“,选择 “Workers AI“。
 - 变量名称: 输入 
AI。 - AI binding: 选择 “Workers AI“。
 - AI ID: 选择 “AI binding“。
 - 这允许你的 Sink 服务利用 Workers AI 目录中的模型。
 
 

- Analytics Engine (可选):
- 启用免费套餐: 在 Cloudflare 仪表盘,转到 “存储与数据库” -> “Analytics Engine“,点击 “Set up” 以启用免费套餐。
 - 添加绑定: 返回到 Pages 项目的 “Bindings” 页面,点击 “Add binding“,选择 “Analytics Engine“。
 - Variable name: 输入 
ANALYTICS。 - Analytics Engine dataset: 选择 
sink数据集。 - 这将允许 Sink 收集和分析短链接的访问数据。
 
 

- 重新部署项目:
- 完成所有绑定和兼容性标志的配置后,返回到项目概述页面,点击 “Deployments“。
 - 点击 重新部署你的项目。这一次,部署将包含你新配置的绑定和标志。
 
 

第三步:配置自定义域名
为了让你的短链接服务拥有更专业的形象和更好的品牌识别度,强烈建议配置自定义域名:
- 在 Cloudflare Pages 中添加自定义域名: 在你的 Pages 项目管理页面,只要你的域名在cloud flare上面托管了,在这个自定义域输入想要使用的域名(例如 
s.yourdomain.com), Cloudflare 会自动添加。 - 如果不是在cloud flare上托管的,在你的域名注册商处添加或修改相应的 CNAME 记录。
 

大功告成:你的专属短链接服务已上线!
祝贺你!你已成功在 Cloudflare Pages 上部署了你的专属 Sink 短链接服务。现在,通过你配置的域名,你就可以开始创建、管理和分享简洁高效的短链接了。
自定义短链接路径: Sink 允许你自定义生成的短链接路径(slug),选择具有描述性的关键词可以提升链接的可读性和潜在的 SEO 价值。
集成 Analytics: 除了 Cloudflare Web Analytics,你还可以考虑集成其他分析工具,更全面地了解短链接的使用情况。
利用 Cloudflare Workers 进行高级定制: 如果你具备一定的开发能力,可以结合 Cloudflare Workers 为你的 Sink 服务添加更高级的功能,例如访问限制、地理位置重定向等。
定期更新 Sink 版本: 关注 Sink 项目的更新,及时将你的 Forked 仓库与上游仓库同步,以获取最新的功能和安全补丁。