Skip to content

系统配置详解 (Environment Variables) ​

本文档详细列出了 NestBase 项目中所有可用的环境变量配置项。

1. 后端配置 (apps/backend/.env) ​

变量名是否必填默认值说明
基础配置
PORT否3000服务监听端口
NODE_ENV否development环境模式: development / production
API_PREFIX否api全局路由前缀
数据库 (Prisma)
DATABASE_URL是-PostgreSQL 连接字符串 (支持连接池)
DIRECT_URL是-PostgreSQL 直连字符串 (用于迁移)
认证安全
JWT_SECRET是-JWT 签名密钥,务必保密
JWT_EXPIRES_IN否7dToken 有效期
REFRESH_TOKEN_EXPIRES_IN否30d刷新 Token 有效期
Redis (可选)
REDIS_HOST否localhostRedis 地址
REDIS_PORT否6379Redis 端口
REDIS_PASSWORD否-Redis 密码
Swagger
SWAGGER_ENABLE否true是否启用 Swagger 文档
SWAGGER_PATH否api-docs文档访问路径

2. 前端配置 (apps/frontend/.env) ​

注意:前端环境变量必须以 VITE_ 开头。

变量名说明示例
构建与服务
VITE_SERVICE_BASE_URL后端 API 地址http://localhost:3000
VITE_HTTP_PROXY是否开启开发代理Y 或 N
路由
VITE_ROUTER_HISTORY_MODE路由模式history (推荐) 或 hash
VITE_ROUTE_HOME_PATH登录后默认跳转页/home
功能开关
VITE_AUTH_ROUTE_MODE路由权限模式dynamic (后端动态) 或 static (前端静态)
VITE_Visualizer是否在构建时生成包分析Y 或 N

3. 特殊配置说明 ​

3.1 跨域配置 (CORS) ​

后端默认允许所有跨域 (origin: *)。在生产环境中,建议修改 main.ts 中的 cors 配置,或通过环境变量注入允许的域名列表。

3.2 数据库连接模式 (Supabase 特有) ​

如果你使用 Supabase,schema.prisma 分离了两个 URL:

  • DATABASE_URL: 用于应用运行时,应连接到 Transaction Pooler (端口 6543)。
  • DIRECT_URL: 用于 prisma migrate,应直接连接到数据库 Session (端口 5432)。

确保在 .env 中正确区分这两个地址。