从本地到云端:如何用 Vercel 快速构建并部署一个动态全栈网站
在传统的 Web 开发中,如果要上线一个带有表单提交、数据存储和邮件通知的“动态网站”,你需要:租用云服务器、配置 Nginx、搭建 Node.js/Python 环境、安装 MySQL/PostgreSQL 数据库、配置 SSL 证书……一套流程下来,往往还没开始写业务代码,就已经被繁琐的运维工作劝退。
随着 Serverless(无服务器)架构的成熟,这一切变得无比简单。最近,我刚好完成了“遥感需求对接平台(RemoteSense Hub)”的搭建。这个平台无需用户注册,但需要收集用户的表单需求、联系方式,并发送验证邮件,是一个标准的动态全栈应用。
借着这次实战,我复盘一下:**如何用 Vercel + Next.js + 现代云服务(Postgres/Resend),在零服务器运维的情况下,快速将本地写好的动态网站发布上线。**下面是我构建的一个动态网站,欢迎大家去测试是否成功,另外有遥感需求也可以发表,也可以遥感的小的需求接单。
一、 技术选型与架构准备
要让网站“动”起来,我们需要解决三个核心问题:页面渲染、数据存储、逻辑处理。
- 前端与后端框架:Next.js。它允许我们将前端页面和后端 API(Route Handlers)写在一个项目里,极大降低了前后端联调的摩擦。
- 部署平台:Vercel。它的 Hobby(免费)计划完美支持 Next.js,并且提供了 Serverless 函数来运行我们的后端逻辑,自带全球 CDN,免去服务器运维。
- 数据库:PostgreSQL。配合 Prisma ORM 操作数据。我们可以选择 Neon 或 Vercel 内置的 Prisma Postgres。
- 邮件服务:Resend。用于给发布需求的用户发送验证链接,以及给管理员发送商务合作通知。
架构逻辑很清晰:用户在前端填写表单 -> 触发 Vercel 上的 API 路由 -> API 将数据写入云端数据库 -> 同时调用 Resend 发送邮件。
二、 代码就绪:推送到 Git 仓库
Vercel 的核心工作流是基于 Git 的。在你的网站本地开发完毕,并且确保npm run dev能在本地成功跑通(表单能存本地库、能发信)后,你需要将代码推送到 GitHub 仓库(比如Remotesense-hub)。
关键的一步是清理敏感信息:确保你的.env文件(包含数据库密码、API 密钥)被写进了.gitignore,绝对不能把明文密钥推送到公开的 GitHub 仓库中。
三、 核心实战:在 Vercel 导入与配置
登录 Vercel 后台,点击 “Add New Project”,导入你刚才的 GitHub