统一模型代理入口
统一承接 `/v1/*`,代理到上游 New-API,同时提供限流、API Key 规则、GET 自动重试和 Redis 持久化熔断。
这套仓库当前强调“能部署、能计费、能巡检、能运营”,而不是只停留在单接口转发。
统一承接 `/v1/*`,代理到上游 New-API,同时提供限流、API Key 规则、GET 自动重试和 Redis 持久化熔断。
统一管理余额、用量、充值流水和用户汇总接口,适合开发者中心或 SaaS 控制台直接消费。
支付聚合入口和 Webhook 解耦,Stripe / USDT 能独立演进,部署和测试都更清晰。
提供用户管理、余额调整、注册码、财务概览和 `/admin/dashboard` 聚合视图,但建议仅在受控域名或内网开放。
`runtime/` 承接支付记录、状态页和 worker 状态,减少各服务把状态文件散落在源码目录里的问题。
主线服务都有 `/ready`,并补了 `metrics`、熔断状态、部署巡检和 native 部署兜底脚本,适合小团队快速接管。
前台公开站点、API 域名、后台控制台分开,是这个项目当前更合理的生产边界。
把 `apps/marketing-site` 部署到 Cloudflare Pages,绑定 `www.xxx.com` 或主域名,用于产品介绍、接入说明和开发者入口。
把 `gateway-api / billing-api / payments-api / admin-api` 部署到你的服务器或宝塔,统一对外提供 `api.xxx.com`。
把 `apps/console-site` 单独部署到 `console.xxx.com`,或者继续由后端 `/console` 提供,仅限内网、Zero Trust 或白名单访问。
现在仓库里的静态前端已经拆成两类:公开落地页和后台控制台,不应再混用。
适合承载公开官网或开发者入口。推荐把 `apps/marketing-site` 作为输出目录。
控制台不是公开前台。它应该挂在独立域名或内网,并且与 API 域名配合使用。
几个最容易部署错位的点,这里直接说明白。
因为它包含用户管理、财务概览、注册码操作、充值巡检和运维诊断能力。即使接口本身有鉴权,把这类页面直接暴露在公开前台域名也会放大扫描和误配风险。
公开前台放 `apps/marketing-site`。如果你要公开访问控制台,也应使用单独的 `apps/console-site` 和单独域名,而不是继续复用营销站目录。
可以。现有控制台已经被保留到 `apps/console-site`,并继续由后端 `/console` 提供。只是它不再承担公开前台的职责。