# 数据库设置 MYSQL_HOST="localhost" MYSQL_PORT=3306 MYSQL_DATABASE="osu_api" MYSQL_USER="osu_api" MYSQL_PASSWORD="password" MYSQL_ROOT_PASSWORD="password" # Redis URL REDIS_URL="redis://127.0.0.1:6379/0" # JWT 密钥,使用 openssl rand -hex 32 生成 JWT_SECRET_KEY="your_jwt_secret_here" # JWT 算法 ALGORITHM="HS256" # JWT 过期时间 ACCESS_TOKEN_EXPIRE_MINUTES=1440 # 服务器地址 HOST="0.0.0.0" PORT=8000 # 服务器 URL SERVER_URL="http://localhost:8000" # 额外的 CORS 允许的域名列表 CORS_URLS='[]' # 调试模式,生产环境请设置为 false DEBUG=false # 私有 API 密钥,用于前后端 API 调用,使用 openssl rand -hex 32 生成 PRIVATE_API_SECRET="your_private_api_secret_here" # osu! 登录设置 OSU_CLIENT_ID=5 # lazer client ID OSU_CLIENT_SECRET="FGc9GAtyHzeQDshWP5Ah7dega8hJACAJpQtw6OXk" # lazer client secret OSU_WEB_CLIENT_ID=6 # 网页端 client ID OSU_WEB_CLIENT_SECRET="your_osu_web_client_secret_here" # 网页端 client secret,使用 openssl rand -hex 40 生成 # SignalR 服务器设置 SIGNALR_NEGOTIATE_TIMEOUT=30 SIGNALR_PING_INTERVAL=15 # Fetcher 设置 FETCHER_CLIENT_ID="" FETCHER_CLIENT_SECRET="" FETCHER_SCOPES=public # 日志设置 LOG_LEVEL="INFO" # 游戏设置 ENABLE_OSU_RX=false # 启用 osu!RX 统计数据 ENABLE_OSU_AP=false # 启用 osu!AP 统计数据 ENABLE_ALL_MODS_PP=false # 启用所有 Mod 的 PP 计算 ENABLE_SUPPORTER_FOR_ALL_USERS=false # 启用所有新注册用户的支持者状态 ENABLE_ALL_BEATMAP_LEADERBOARD=false # 启用所有谱面的排行榜(没有排行榜的谱面会以 APPROVED 状态返回) SEASONAL_BACKGROUNDS='[]' # 季节背景图 URL 列表 # 存储服务设置 # 支持的存储类型:local(本地存储)、r2(Cloudflare R2)、s3(AWS S3) STORAGE_SERVICE="local" # 存储服务配置 (JSON 格式) # 本地存储配置(当 STORAGE_SERVICE=local 时) STORAGE_SETTINGS='{"local_storage_path": "./storage"}' # Cloudflare R2 存储配置(当 STORAGE_SERVICE=r2 时) # STORAGE_SETTINGS='{ # "r2_account_id": "your_cloudflare_r2_account_id", # "r2_access_key_id": "your_r2_access_key_id", # "r2_secret_access_key": "your_r2_secret_access_key", # "r2_bucket_name": "your_r2_bucket_name", # "r2_public_url_base": "https://your-custom-domain.com" # }' # AWS S3 存储配置(当 STORAGE_SERVICE=s3 时) # STORAGE_SETTINGS='{ # "s3_access_key_id": "your_aws_access_key_id", # "s3_secret_access_key": "your_aws_secret_access_key", # "s3_bucket_name": "your_s3_bucket_name", # "s3_region_name": "us-east-1", # "s3_public_url_base": "https://your-custom-domain.com" # }'