环境变量
网站基础配置
环境变量 | 是否必须 | 说明 |
---|---|---|
NEXT_PUBLIC_SITE_URL | 必须 | 网站访问地址 • 本地开发时填写启动地址,默认为 http://localhost:3000 • 生产环境请填写你的实际域名 |
NEXT_PUBLIC_LOCALE_DETECTION | 必须 | 语言检测模式,推荐设置为 false • 设为 true :启用 next-intl 自动检测,会根据浏览器语言自动跳转到对应语言页面• 设为 false :使用 Nexty.dev 内置的 SEO 友好语言检测器 |
NEXT_PUBLIC_OPTIMIZED_IMAGES | 可选 | 是否启用图片优化,推荐设置为 true ,这样能够节省 Vercel 图片优化资源 |
ALLOWED_REDIRECT_HOSTS | 可选 | 登录成功后允许重定向的域名白名单,仅在开发环境生效 |
提示
Nexty.dev 的语言检测器会在用户首次访问时检查浏览器语言,如果与当前页面语言不一致,会弹出友好的切换提示。从第二次访问开始,系统会根据 cookie 记录自动跳转到用户偏好的语言页面。这种方式减少了不必要的重定向,对 SEO 更加友好。
Discord WidgetBot
环境变量 | 是否必须 | 说明 |
---|---|---|
NEXT_PUBLIC_DISCORD_INVITE_URL | 可选 | Discord 邀请链接 |
数据分析
环境变量 | 是否必须 | 说明 |
---|---|---|
NEXT_PUBLIC_GOOGLE_ID | 可选 | Google Analytics |
NEXT_PUBLIC_BAIDU_TONGJI | 可选 | 百度统计 |
NEXT_PUBLIC_PLAUSIBLE_DOMAIN | 可选 | Plausible 分析域名 |
NEXT_PUBLIC_PLAUSIBLE_SRC | 可选 | Plausible 脚本源地址 |
广告配置
环境变量 | 是否必须 | 说明 |
---|---|---|
NEXT_PUBLIC_GOOGLE_ADSENSE_ID | 可选 | Google AdSense |
Supabase 数据库
Supabase 提供数据存储和用户认证服务。
环境变量 | 是否必须 | 说明 |
---|---|---|
NEXT_PUBLIC_SUPABASE_URL | 必须 | Supabase 项目 URL |
NEXT_PUBLIC_SUPABASE_ANON_KEY | 必须 | Supabase 匿名访问密钥 |
SUPABASE_SERVICE_ROLE_KEY | 必须 | Supabase 服务端角色密钥 |
NEXT_PUBLIC_GOOGLE_CLIENT_ID | 非必须 | Google 客户端 ID(v1.1.9) |
如果你还没有 Supabase 账号,请先参考 Supabase 集成 章节完成配置。
Resend 邮件服务
Resend 是专业的邮件发送服务,Nexty.dev 基于它实现了邮件通知功能。
环境变量 | 是否必须 | 说明 |
---|---|---|
RESEND_API_KEY | 可选 | Resend API 访问密钥 |
RESEND_AUDIENCE_ID | 可选 | Resend 受众群体 ID |
ADMIN_EMAIL | 可选 | 管理员邮箱地址,用作邮件发送方 |
ADMIN_NAME | 可选 | 管理员姓名,用作邮件发送方显示名称 |
关于 RESEND_API_KEY
和 RESEND_AUDIENCE_ID
的获取方法,请参考 Resend 集成 章节。
Upstash Redis 缓存
Upstash Redis 用于数据缓存和请求频率限制等场景。
Nexty.dev 在邮件订阅功能中使用 Upstash Redis 来限制每日提交次数。这个实现可以作为参考案例,当你的产品遇到流量攻击时,可以基于内置的限流器快速拦截恶意请求。
环境变量 | 是否必须 | 说明 |
---|---|---|
UPSTASH_REDIS_REST_URL | 可选 | Redis 数据库 URL |
UPSTASH_REDIS_REST_TOKEN | 可选 | Redis 访问令牌 |
UPSTASH_REDIS_NEWSLETTER_RATE_LIMIT_KEY | 可选 | 邮件订阅限流的 Redis 键名 |
DAY_MAX_SUBMISSIONS | 可选 | 每日最大提交次数限制 |
关于 UPSTASH_REDIS_REST_URL
和 UPSTASH_REDIS_REST_TOKEN
的获取方法,请参考 Upstash 集成 章节。
Cloudflare R2 存储
Cloudflare R2 提供文件存储服务,Nexty.dev 使用它来保存用户头像、AI 生成的图片和视频、博客配图等资源。
环境变量 | 是否必须 | 说明 |
---|---|---|
R2_ACCOUNT_ID | 可选 | R2 存储账户 ID |
R2_ACCESS_KEY_ID | 可选 | R2 访问密钥 ID |
R2_SECRET_ACCESS_KEY | 可选 | R2 私有访问密钥 |
R2_BUCKET_NAME | 可选 | R2 存储桶名称 |
R2_PUBLIC_URL | 可选 | R2 存储桶公共访问 URL |
这些环境变量的获取方法请参考 Cloudflare R2 集成 章节。
AI 模型集成
Nexty.dev 提供了一个 AI Demo 页面,用于测试各种 AI 模型的能力。如果你对 AI 功能集成不熟悉,可以参考这个页面的代码实现。
环境变量 | 是否必须 | 说明 |
---|---|---|
OPENAI_API_KEY | 可选 | OpenAI API 密钥 |
DEEPSEEK_API_KEY | 可选 | DeepSeek API 密钥 |
ANTHROPIC_API_KEY | 可选 | Anthropic API 密钥 |
XAI_API_KEY | 可选 | XAI API 密钥 |
GOOGLE_API_KEY | 可选 | Google API 密钥 |
REPLICATE_API_TOKEN | 可选 | Replicate API 令牌 |
OPENROUTER_API_KEY | 可选 | OpenRouter API 密钥 |
Stripe 支付
环境变量 | 是否必须 | 说明 |
---|---|---|
NEXT_PUBLIC_ENABLE_STRIPE | 必须 | 是否启用 Stripe 支付功能 • 设为 true :启用 Stripe 支付功能• 设为 false :关闭支付功能,下列配置项可以不填 |
STRIPE_SECRET_KEY | 可选 | Stripe 私有密钥 |
STRIPE_PUBLISHABLE_KEY | 可选 | Stripe 公开密钥 |
STRIPE_WEBHOOK_SECRET | 可选 | Stripe Webhook 签名密钥 |
DEFAULT_CURRENCY | 可选 | 默认支付货币 |
STRIPE_WEBHOOK_ASYNC_PROCESSING | 可选 | Stripe Webhook 处理模式 • 设为 false :依赖 Stripe 的重试机制(推荐)• 设为 true :启用异步处理,响应更快但需要自建可靠性保障 |
STRIPE_CUSTOMER_PORTAL_URL | 可选 | 用户订阅管理页面 URL |
关于 STRIPE_SECRET_KEY
、STRIPE_PUBLISHABLE_KEY
和 STRIPE_WEBHOOK_SECRET
的获取方法,请参考 Stripe 集成 章节。
AI 翻译功能
Nexty.dev 在定价卡片的创建和编辑页面内置了 AI 多语言翻译功能,需要配置对应的 AI 模型才能使用。
环境变量 | 是否必须 | 说明 |
---|---|---|
NEXT_PUBLIC_AI_MODEL_ID | 可选 | AI 模型标识符 |
NEXT_PUBLIC_AI_PROVIDER | 可选 | AI 模型服务提供商 |
如果你不需要使用 AI 翻译功能,可以不必配置以上环境变量。
Affiliate(Tolt.io)
环境变量 | 是否必须 | 说明 |
---|---|---|
NEXT_PUBLIC_TOLT_ID | 可选 | Tolt.io Affiliate ID |