这次做个人站,我没有让 Flask 承担整站渲染,而是把它限制在一个非常清晰的位置上:返回站点信息、做健康检查、为后续扩展预留入口。
为什么不是全栈一把梭
如果首页、博客列表和文章页本身就是稳定内容,那么它们天然适合静态化。这样做有几个好处:
- 首屏快。
- SEO 成本低。
- 部署更稳定。
- 后续迁移也轻松。
Flask 在这里负责什么
我希望 Flask 做的是“薄后端”,而不是“重后台”。在 v1 里,它只保留两个公开接口:
@app.get("/api/site")
def site():
return {"siteName": "ZHUI / SIGNAL", "email": "hello@your-domain.com"}
@app.get("/api/health")
def health():
return {"status": "ok"}
这已经足够支撑部署、监控和少量动态配置。
静态优先的核心价值
内容型站点最怕的是维护成本失控。静态优先其实是在帮未来的自己减负:文章仍然能继续写,页面仍然能持续迭代,但整个系统不会因为加了一个后台就变得脆弱。