前端部署到 Vercel 后,后端 API 怎么办?
Vercel 虽然也支持 Serverless Functions,但对于一个完整的 Express 应用来说,部署到专门的云平台更合适。
Render是目前对个人开发者最友好的免费后端托管平台。本文将带你一步步把 Node.js + Express 项目部署到 Render,并涵盖所有生产环境必须注意的配置。
一、前置准备
| 准备项 | 说明 |
|---|---|
| Node.js 项目 | Express、Koa 或任何 Node.js 框架 |
| package.json | 必须包含start脚本 |
| 代码已推送到 GitHub | Render 通过 GitHub 仓库部署 |
| Render 账号 | 用 GitHub 账号注册即可 |
二、代码层面的准备工作
在部署之前,确保你的代码做了以下三件事。这三件事不做,部署大概率失败。
2.1 添加 start 脚本
Render 需要通过package.json中的start命令来启动应用:
{"scripts":{"start":"node index.js"}}如果你的入口文件是src/index.js:
{"scripts":{"start":"node src/index.js"}}如果使用 TypeScript 编译到dist/:
{"scripts":{"build":"tsc","start":"node dist/index.js"}}2.2 监听动态端口(最关键!)
Render 会动态分配端口,你的应用必须从process.env.PORT读取端口号:
// ❌ 错误写法(硬编码端口)app.listen(3000)// ✅ 正确写法(读取动态端口)const