环境变量
所有环境变量的完整参考。
必需变量
数据库
DATABASE_URL="postgresql://user:password@host/db?sslmode=require"认证
BETTER_AUTH_SECRET="至少32字符的随机密钥"
BETTER_AUTH_URL="http://localhost:3000"应用 URL
NEXT_PUBLIC_APP_URL="http://localhost:3000"服务集成
Kie.ai(订婚照生成)
生产环境双图生成流程必需:
IMAGE_PROVIDER="kie"
KIE_API_KEY="your-kie-api-key"
KIE_API_BASE_URL="https://api.kie.ai"
KIE_IMAGE_MODEL="gpt-image-2-image-to-image"
KIE_IMAGE_ASPECT_RATIO="2:3"火山引擎(遗留演示)
仅在启用内置对话或视频演示时需要:
VOLCANO_ENGINE_API_KEY="your-volcano-engine-api-key"
VOLCANO_ENGINE_API_URL="https://ark.cn-beijing.volces.com/api/v3"Creem(支付)
Creem 是当前支付提供商。Waffo 仅作为需要明确切回时的回滚选项保留。Creem Test 只允许连接本地或 Preview 数据库,禁止连接 Production 数据库:
PAYMENT_PROVIDER="creem"
BILLING_DATA_ENVIRONMENT="preview"
CREEM_ENVIRONMENT="test"
CREEM_TEST_API_KEY="your-creem-test-api-key"
CREEM_TEST_WEBHOOK_SECRET="whsec_..."
CREEM_TEST_PRODUCT_ID_STARTER_MONTHLY="prod_..."
CREEM_TEST_PRODUCT_ID_PRO_MONTHLY="prod_..."
CREEM_TEST_PRODUCT_ID_PACK_20="prod_..."
CREEM_TEST_PRODUCT_ID_PACK_50="prod_..."
CREEM_TEST_PRODUCT_ID_PACK_120="prod_..."Preview 部署的 DATABASE_URL 必须指向独立的 Neon 分支或其他非 Production PostgreSQL 数据库。如果不是 Vercel 部署,请显式设置 BILLING_DATA_ENVIRONMENT="preview"。Webhook 地址为:
https://your-preview-domain.com/api/payments/creem/webhookCreem Live 只允许使用 CREEM_ENVIRONMENT="live" 和 BILLING_DATA_ENVIRONMENT="production";Test Mode 不应使用这些值。
Resend(邮件)
认证邮件和通知必需:
RESEND_API_KEY="re_your_api_key"
RESEND_FROM_EMAIL="Your App <noreply@yourdomain.com>"Google OAuth(可选)
AUTH_GOOGLE_ID="your-google-client-id"
AUTH_GOOGLE_SECRET="your-google-client-secret"定时任务
CRON_SECRET="your-cron-secret"可选分析工具
NEXT_PUBLIC_POSTHOG_KEY="phc_..."
NEXT_PUBLIC_GOOGLE_ANALYTICS_ID="G-..."
NEXT_PUBLIC_CLARITY_PROJECT_ID="..."订婚照存储(S3 兼容)
使用 IMAGE_PROVIDER="kie" 时必须配置 R2,确保上传和生成结果由应用持有。
STORAGE_ENDPOINT="https://..."
STORAGE_BUCKET_NAME="your-bucket"
STORAGE_REGION="auto"
STORAGE_ACCESS_KEY_ID="..."
STORAGE_SECRET_ACCESS_KEY="..."
STORAGE_PUBLIC_URL="https://..."