# RelayGate 静态原型

这是一个合规多密钥 HTTP API 中转站的静态门面原型。

当前内容只展示产品样子，不接真实上游 API key，不提供账号池、绕限流、共享账号或转售第三方 API 的功能。

## 文件

```text
index.html   页面结构
styles.css   页面样式
README.md    使用说明
```

## 本地预览

在当前目录运行：

```powershell
python -m http.server 8080
```

然后打开：

```text
http://localhost:8080
```

如果本机没有 Python，也可以用任意静态服务器托管这个目录。

## 当前域名

截图中识别到的域名：

```text
bossingchentest.top
```

页面里的 API 示例已替换为：

```text
https://api.bossingchentest.top
```

建议用途：

```text
bossingchentest.top       静态门面
api.bossingchentest.top   后续真实中转 API
```

如果你希望页面展示品牌名，把 `RelayGate` 替换成你的服务名即可。

## 静态部署

可直接部署到以下任一平台：

```text
Cloudflare Pages
Vercel
Netlify
Nginx 静态目录
Caddy file_server
任意对象存储静态网站
```

### DNSPod 解析建议

在 DNSPod 添加 2 条记录：

```text
类型   主机记录   记录值
A      @          你的服务器公网 IP
A      api        你的服务器公网 IP
```

如果静态门面部署到 Cloudflare Pages、Vercel 或 Netlify，则 `@` 通常改为平台要求的 CNAME 或 A 记录；`api` 仍指向你的后端服务器或网关入口。

### Caddy 示例

```caddyfile
bossingchentest.top {
  root * /var/www/relaygate
  file_server
  encode gzip zstd
}

api.bossingchentest.top {
  reverse_proxy 127.0.0.1:8000
  encode gzip zstd
}
```

### Nginx 示例

```nginx
server {
  listen 80;
  server_name bossingchentest.top;
  root /var/www/relaygate;
  index index.html;

  location / {
    try_files $uri $uri/ /index.html;
  }
}

server {
  listen 80;
  server_name api.bossingchentest.top;

  location / {
    proxy_pass http://127.0.0.1:8000;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
  }
}
```

## 后续接真实中转服务

建议后端 API 路径保持这个结构：

```text
POST /proxy/{upstream_id}/{path}
GET  /admin/usage
GET  /admin/keys
POST /admin/keys/{key_id}/disable
```

最低后端组件：

```text
FastAPI 或 Node.js
Redis 限流
SQLite 或 Postgres 存配置与用量
AES-GCM 或系统 KMS 加密上游 key
```

## 合规边界

必须坚持 5 条：

1. 只使用你合法持有或被授权的 API key。
2. 不允许任意 `target_url`，只允许白名单 upstream。
3. 不绕过上游 rate limit，网关限流必须小于或等于上游额度。
4. 不共享、售卖或转售第三方账号和 key。
5. 日志不得记录真实 key、敏感请求体或用户隐私数据。
