为什么这个站是纯静态的
这个站没有后端、没有数据库、没有评论系统、没有统计脚本,加载时不向任何外部域名发起请求。整个站点就是一堆 HTML/CSS/JS 文件,放到任何一台服务器上都能跑。
这是我刻意的选择,理由有三个。
一、它永远不会因为「服务挂了」而打不开#
静态文件没有运行时。没有数据库连接、没有依赖服务、没有内存泄漏、没有需要重启的进程。只要服务器还在提供文件,站点就在。
对一个个人主页来说,「一直能打开」比「功能丰富」重要得多。
二、它加载得快,而且快得很稳定#
没有跨域请求、没有第三方脚本、没有字体从境外 CDN 拉半天。首屏要的东西全在同一个目录里。
顺便说一个容易被忽视的点:加载第三方资源是有隐私代价的。嵌一个外部统计脚本,访客的 IP、UA、访问路径就都到了别人服务器上。我不想在自己的小站上做这件事。
三、它合规上最干净#
个人备案的站点有一堆限制:不能做交互式服务(评论、注册、留言),不能有经营性内容,不能提供软件下载。
没有后端,这些限制就自动满足了——因为没有可以被滥用的东西。我不需要每次加功能都担心越线。
代价是什么#
诚实地说,纯静态有明确的限制:
- 不能有评论。想交流只能通过邮件或社交账号找我。
- 内容更新要重新部署。加一篇文章就是改一个文件再上传。
- 不能做真正的搜索。现在的文章列表规模还小,真多了就得靠前端索引。
- 不能统计访问量(不用第三方服务的前提下)。
这些我都能接受。如果哪天其中某一条变成了硬需求,我会先想清楚「为了这个功能,我愿意付出多少复杂度、隐私和合规成本」,再动手。
一个反直觉的收获#
受限之后,设计反而变清楚了。
不能有后端,我就必须把每个功能想成「一段可以离线运行的纯函数」——在线工具台那九个工具就是这么长出来的:JSON 格式化、时间戳转换、Base64、正则测试……全部在浏览器里算,不上传任何数据,也不需要任何服务器。
约束不是敌人,它通常会把你逼到一个更好的设计上。