# 数据库连接地址(必填) # 格式:postgresql://用户名:密码@主机:端口/数据库名?sslmode=require # 示例:postgresql://myuser:mypassword@localhost:5432/voicehub?sslmode=require DATABASE_URL="postgresql://username:password@host:port/database?sslmode=require" # JWT 认证密钥(必填) # 请使用强随机字符串,建议至少 32 位 JWT_SECRET="your-very-secure-jwt-secret-key" # WebAuthn / Passkey 配置(可选) # 依赖方 ID (RP ID),必须是你域名的一个有效域名 # 规则:必须是请求域名的精确匹配或父域名 # # 示例: # - 请求域名为 voicehub.example.com,RP ID 可设为 voicehub.example.com 或 example.com # - 不配置时,默认使用当前请求的 hostname(适合开发/预览环境) # - 生产环境建议配置为你的主域名,如:voicehub.example.com WEBAUTHN_RP_ID= # 允许的 Origin 列表(可选) # WebAuthn 要求精确匹配 Origin,此配置用于支持多域名部署 # 多个域名用逗号分隔,必须包含 https:// 前缀 # # 示例: # - 单域名:https://voicehub.example.com # - 多域名(Vercel 预览 + 生产):https://voicehub.example.com,https://voicehub-xxx.vercel.app # - 二级域名:https://voicehub.example.com,https://sub.voicehub.example.com # # 不配置时:默认信任请求的 Origin(适合开发环境) # 生产环境:强烈建议配置,以防止恶意站点伪造 Origin 攻击 WEBAUTHN_ORIGIN= # 应用运行环境(可选) # development: 开发环境 # production: 生产环境 NODE_ENV=development # Redis 缓存服务(可选,暂不推荐) # 如果设置了 REDIS_URL,系统将自动启用 Redis 缓存功能 # 格式:redis://用户名:密码@主机:端口 # REDIS_URL="redis://default:password@host:port" # OAuth 配置(可选) # 启用相应的 OAuth 提供商需要填写对应的 Client ID 和 Client Secret # OAuth 回调地址(必填,如果启用 OAuth) # 注意:[provider] 是占位符,实际使用时需要根据具体情况填写 OAUTH_REDIRECT_URI="http://localhost:3000/api/auth/[provider]/callback" # 用于加密 OAuth state 的密钥(必填,如果启用 OAuth) OAUTH_STATE_SECRET=your-secure-random-string-for-oauth-state # GitHub OAuth GITHUB_CLIENT_ID= GITHUB_CLIENT_SECRET= # Casdoor OAuth CASDOOR_CLIENT_ID= CASDOOR_CLIENT_SECRET= CASDOOR_ENDPOINT= # Google OAuth GOOGLE_CLIENT_ID= GOOGLE_CLIENT_SECRET=