制作说明 / V1.3.0/2026 · 09 · 28/5 分钟阅读
公开内容与私人状态如何共存
从 Cloudflare Worker、Supabase 登录到公开统计与留言板,解释动态能力的边界和密钥去向。
ArchitecturePrivacyCloudflare
01
静态内容,动态服务
文章、项目和课程内容由 Next.js 构建为可直接交付的页面;登录会话、学习进度、考试与留言需要请求时运行的 API。Cloudflare Worker 承担这些服务端路由,因而本站不是纯静态站。
02
公开键与私密令牌
Supabase 的公开项目地址与匿名键可供浏览器使用,但不能取代行级安全策略;Cloudflare 统计的只读令牌与任何服务端密钥只能留在服务端环境。仓库忽略 .env.local、.dev.vars 与本地音频目录,发布前还需核对实际部署环境的变量。
03
匿名是一种展示选择
留言者必须登录,才能提交内容;选择匿名后,公开记录显示匿名访客而不是 GitHub 昵称。访客痕迹与它不同,只写当前浏览器的本地存储。两者的说明都应把保存位置说清楚。