Files
BYW-VoiceHub/.env.example
T

94 lines
4.1 KiB
Bash
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 数据库连接地址(必填)
# 格式: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"
# 受信的 CDN/反向代理真实 IP 头(可选)
# 多个头用逗号分隔;未配置时只使用 TCP 连接地址,避免客户端伪造转发头。
# 示例:EdgeOne 使用 eo-connecting-ip,Cloudflare 使用 cf-connecting-ip
# TRUSTED_CLIENT_IP_HEADERS=eo-connecting-ip
# 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
# Sentry 配置(可选)
# 是否启用错误追踪与遥测请在管理员后台的站点配置中控制。
# 默认仅在后台开启后发送错误事件和实例在线事件;性能追踪默认 10%,会话回放默认关闭。
# 上报的硬性前提:NODE_ENV=production 且非平台预览部署(Vercel preview / Netlify deploy-preview 与 branch-deploy 自动关闭)。
# 如需强制覆盖(例如自托管测试环境或临时调试),可设置 SENTRY_ENABLED=true/false,设置后以该值为准。
# 如需覆盖采样率,可取消注释并设置为 [0,1] 范围内的数字。
# SENTRY_ENABLED=false
# SENTRY_TRACES_SAMPLE_RATE=0.1
# NUXT_PUBLIC_SENTRY_TRACES_SAMPLE_RATE=0.1
# NUXT_PUBLIC_SENTRY_REPLAYS_SESSION_SAMPLE_RATE=0
# NUXT_PUBLIC_SENTRY_REPLAYS_ON_ERROR_SAMPLE_RATE=0
# Redis 分布式短期状态服务(可选)
# 单实例可不配置;多实例/Serverless 建议配置,用于验证码、限流和临时锁定。
# 格式:redis://用户名:密码@主机:端口
# REDIS_URL="redis://default:password@host:port"
# Redis 键命名空间,多个 VoiceHub 环境共用 Redis 时应分别设置
# REDIS_KEY_PREFIX="voicehub:v2:"
# OAuth 配置(可选)
# 启用相应的 OAuth 提供商需要填写对应的 Client ID 和 Client Secret
# OAuth 运行时配置已经迁移到管理员后台;以下变量仅用于兼容旧部署和后台一键导入。
# 导入完成后,系统以数据库中保存的配置为准,不会在每次启动时直接读取这些变量。
# 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=
# 聚合登陆 OAuth
AGGREGATE_OAUTH_APP_ID=
AGGREGATE_OAUTH_APP_KEY=
# 支持单值、逗号分隔或 JSON 数组,例如:qq,wx,sina,baidu
# 可用值:qq,wx,alipay,sina,baidu,douyin,huawei,xiaomi,gitee,gitea,bilibili,kuaishou
AGGREGATE_OAUTH_LOGIN_TYPE=qq
AGGREGATE_OAUTH_ENDPOINT=https://example.com/connect.php