对于 Astro 这种轻量、追求极速的 SSG 静态站点,处理评论或留言表单主要看你的业务场景:
如果只是客户咨询/联系表单(提交即发邮件/存后台),和公开互动评论区(如博客留言),解法完全不同。
方案 1:客户咨询 / 留言表单 (Contact Form)
适用于外贸独立站、品牌展示站、服务预约,提交后不公开,仅需后台接收通知。
1. 托管式无服务器表单(最推荐,零开发量)
直接将 <form> 的 action 提交给第三方 API,由它们负责验证、防垃圾(reCAPTCHA)、邮件通知与 Webhook 集成。
- Formspree / Web3Forms:前端只需写原生 HTML
<form action="[https://formspree.io/f/xxx](https://formspree.io/f/xxx)">,几秒钟集成完。免费额度够用(每月 50-100 封),支持自动转发邮箱。 - Formbold / Getform:同类优秀替代品,控制面板干净。
2. Serverless Function + 邮件 Service(自主度高、零额外成本)
如果部署在 Vercel / Netlify / Cloudflare Pages,直接借用平台的 Serverless 能力:
- 前端用
fetch('/api/contact', { ... })发送 JSON。 - 后端写一个 Astro API Route (
src/pages/api/contact.ts)。 - 内部调用 Resend 或 Postmark 的 SDK,把邮件直接发到你的工作邮箱(如 Resend 免费额度每天 100 封,体验极佳)。
方案 2:公开评论系统 (Public Comment System)
适用于博客、案例展示页等需要公开互动、访客能看到彼此评论的区域。
| 方案 | 特点与优点 | 适用场景 / 推荐度 |
Giscus | 零成本、体验优雅。 基于 GitHub Discussions,访客用 GitHub 登录发表。样式适配暗黑模式,零垃圾广告。 | 极力推荐(如果你的访客偏技术/同行/开发者)。 |
Cusdis | 极简、隐私友好。 作者是 Randy,轻量(仅 ~5KB),支持匿名评论,后端可部署在 Vercel + Supabase 免费层。 | 极力推荐(对普通访客门槛最低,不需要 GitHub 账号)。 |
Waline | 功能最全(源自 Valine)。 支持 Markdown、表情包、邮件通知、Telegram/微信通知。后端一键部署 LeanCloud 或 Vercel。 | 适合想要丰富交互、自带评论提醒的场景。 |
| Utterances | Giscus 的前身,基于 GitHub Issues,依然可用但更推荐 Giscus。 |
选型建议
- 如果是 TiHUBB 官网的“客户咨询/项目询价表单”:
- 推荐 Astro API Route + Resend API 部署在 Vercel,数据最安全,邮件到达率极高,且完全不暴露第三方域名。
- 如果是开放给访客交流的“文章/案例评论区”:
- 想要普通访客无门槛免登录直接留言 $\rightarrow$ 选 Cusdis 或 Waline。
- 想要零运维且防 Spam 极佳 $\rightarrow$ 选 Giscus。