Skip to content

Commit 6c1b746

Browse files
h7mlclaude
andcommitted
docs: update CONFIGURATION and PROJECT_SUMMARY for v3.0.0
- 添加用户系统配置说明(JWT、Turnstile、邮件服务) - 更新项目摘要,增加用户系统功能和新模块说明 - 更新项目结构,标注 v3.0.0 新增内容 - 更新数据存储架构说明(PostgreSQL + Redis) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
1 parent c6df97a commit 6c1b746

File tree

2 files changed

+179
-15
lines changed

2 files changed

+179
-15
lines changed

CONFIGURATION.md

Lines changed: 88 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,94 @@ openssl rand -hex 32
2323

2424
---
2525

26-
### 2. 统计分析开关
26+
### 2. 用户系统配置 <sup>v3.0.0+</sup>
27+
28+
#### 2.1 JWT 签名密钥(必须配置)
29+
30+
```toml
31+
AUTH_SECRET = "your-jwt-secret-key-here"
32+
```
33+
34+
**说明**
35+
- 用于 JWT Token 签名和验证
36+
- 必须是 32 位以上的随机字符串
37+
- 用户登录和会话管理依赖此密钥
38+
39+
**安全建议**
40+
```bash
41+
# 生成随机密钥
42+
openssl rand -base64 48
43+
```
44+
45+
#### 2.2 Turnstile 人机验证(推荐配置)
46+
47+
```toml
48+
ENABLE_TURNSTILE = "true"
49+
TURNSTILE_SITE_KEY = "your-turnstile-site-key"
50+
TURNSTILE_SECRET_KEY = "your-turnstile-secret-key"
51+
```
52+
53+
**说明**
54+
- `ENABLE_TURNSTILE`:是否启用 Turnstile 验证(推荐 `true`
55+
- `TURNSTILE_SITE_KEY`:前端使用的 Site Key
56+
- `TURNSTILE_SECRET_KEY`:后端验证使用的 Secret Key
57+
58+
**获取密钥**
59+
1. 访问 [Cloudflare Dashboard](https://dash.cloudflare.com/?to=/:account/turnstile)
60+
2. 创建新的 Turnstile 站点
61+
3. 选择 "Managed" 模式(推荐)
62+
4. 复制 Site Key 和 Secret Key
63+
64+
**作用范围**
65+
- 用户注册
66+
- 用户登录(验证码/密码模式)
67+
- 发送验证码邮件
68+
69+
**禁用方法**
70+
```toml
71+
ENABLE_TURNSTILE = "false" # 关闭 Turnstile 验证
72+
```
73+
74+
#### 2.3 邮件服务配置(必须配置)
75+
76+
```toml
77+
EMAIL_FORWARD_URL = "your-push-all-in-one-url"
78+
EMAIL_HOST = "smtp.example.com"
79+
EMAIL_PORT = "587"
80+
EMAIL_AUTH_USER = "[email protected]"
81+
EMAIL_AUTH_PASS = "your-email-password"
82+
EMAIL_SECURE = "true"
83+
```
84+
85+
**说明**
86+
- `EMAIL_FORWARD_URL`:邮件转发服务地址(推荐使用 push-all-in-one)
87+
- `EMAIL_HOST`:SMTP 服务器地址
88+
- `EMAIL_PORT`:SMTP 端口(通常为 587 或 465)
89+
- `EMAIL_AUTH_USER`:SMTP 认证用户名(通常是邮箱地址)
90+
- `EMAIL_AUTH_PASS`:SMTP 认证密码
91+
- `EMAIL_SECURE`:是否使用 TLS/SSL(`true` 推荐)
92+
93+
**推荐方案**
94+
1. **push-all-in-one**(推荐)
95+
- GitHub: https://github.com/sinlatansen/push-all-in-one
96+
- 支持多种邮件服务商
97+
- 提供统一的 HTTP 接口
98+
99+
2. **常见 SMTP 服务商**
100+
- **Gmail**: smtp.gmail.com:587
101+
- **Outlook**: smtp-mail.outlook.com:587
102+
- **QQ Mail**: smtp.qq.com:587
103+
- **163 Mail**: smtp.163.com:465
104+
105+
**验证码邮件特性**
106+
- 精美的 HTML 邮件模板
107+
- 10 分钟有效期
108+
- 单次使用验证码
109+
- 频率限制(60 秒/次,10 次/天)
110+
111+
---
112+
113+
### 3. 统计分析开关
27114

28115
```toml
29116
ENABLE_ANALYTICS = "false" # 推荐值:false

PROJECT_SUMMARY.md

Lines changed: 91 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@
55
- **项目名称**: Ollama API Pool
66
- **仓库地址**: https://github.com/dext7r/ollama-api-pool
77
- **许可证**: MIT License
8-
- **技术栈**: Cloudflare Workers, JavaScript
9-
- **版本**: 1.0.0
8+
- **技术栈**: Cloudflare Workers, JavaScript, PostgreSQL, Redis
9+
- **版本**: 3.0.0
1010

1111
## ✨ 核心功能
1212

@@ -32,8 +32,19 @@
3232
- ✅ 统计面板
3333
- ✅ Key 管理
3434
- ✅ Token 管理
35-
36-
### 5. OpenAI 兼容
35+
- ✅ 用户管理 <sup>v3.0.0</sup>
36+
37+
### 5. 用户系统 <sup>v3.0.0</sup>
38+
- ✅ 邮箱注册/登录
39+
- ✅ 验证码登录
40+
- ✅ 密码登录
41+
- ✅ 邮件验证
42+
- ✅ Turnstile 人机验证
43+
- ✅ 用户仪表盘
44+
- ✅ 每日签到续期
45+
- ✅ 签到历史查询
46+
47+
### 6. OpenAI 兼容
3748
- ✅ /v1/chat/completions
3849
- ✅ /v1/models
3950
- ✅ 流式/非流式支持
@@ -44,20 +55,45 @@
4455
ollama-api-pool/
4556
├── .github/
4657
│ └── workflows/
47-
│ └── deploy.yml # 自动部署配置
58+
│ ├── deploy.yml # 自动部署配置
59+
│ └── api-test.yml # API 测试工作流
60+
├── database/
61+
│ ├── schema.sql # PostgreSQL 数据库结构
62+
│ ├── README.md # 数据库说明
63+
│ └── SQL_README.md # SQL 脚本文档
64+
├── scripts/
65+
│ └── README.md # 脚本说明
4866
├── src/
67+
│ ├── html/
68+
│ │ ├── login.js # 登录页面 HTML
69+
│ │ ├── main-dashboard.js # 管理后台 HTML
70+
│ │ └── user-dashboard.js # 用户仪表盘 HTML <sup>v3.0.0</sup>
71+
│ ├── static/
72+
│ │ ├── api-docs-html.js # API 文档页面
73+
│ │ ├── dashboard-js.js # 管理后台 JS
74+
│ │ ├── login-js.js # 登录页面 JS
75+
│ │ └── user-dashboard-js.js # 用户仪表盘 JS <sup>v3.0.0</sup>
4976
│ ├── index.js # 主入口
5077
│ ├── proxy.js # API 代理 + 统计
51-
│ ├── auth.js # 鉴权模块
52-
│ ├── admin.js # 管理 API + 验证导入
53-
│ ├── keyManager.js # Key 管理 + 健康检查
54-
│ ├── dashboard.js # 管理后台 UI
78+
│ ├── auth.js # 鉴权模块 + 用户认证 <sup>v3.0.0</sup>
79+
│ ├── admin.js # 管理 API + 用户管理 <sup>v3.0.0</sup>
80+
│ ├── dashboard.js # 管理后台路由
81+
│ ├── email.js # 邮件服务 <sup>v3.0.0</sup>
82+
│ ├── postgres.js # PostgreSQL 数据库操作
83+
│ ├── redis.js # Redis 缓存操作
84+
│ ├── providers.js # Provider 管理
85+
│ ├── buildInfo.js # 构建信息
5586
│ └── utils.js # 工具函数
5687
├── .gitignore # Git 忽略规则
88+
├── CHANGELOG.md # 变更日志
89+
├── CONFIGURATION.md # 配置指南
5790
├── CONTRIBUTING.md # 贡献指南
91+
├── OPTIMIZATION.md # 优化建议
92+
├── PROJECT_SUMMARY.md # 项目摘要
5893
├── LICENSE # MIT 许可证
5994
├── package.json # 项目配置
60-
├── README.md # 项目文档
95+
├── README.md # 项目文档(中文)
96+
├── README_EN.md # 项目文档(英文)
6197
└── wrangler.toml # Cloudflare 配置
6298
```
6399

@@ -83,10 +119,51 @@ ollama-api-pool/
83119

84120
### dashboard.js
85121
- Web 管理界面
86-
- 4个功能标签: API Keys / 客户端 Tokens / 批量导入 / 统计分析
87-
- 实时刷新 (30秒轮询)
88-
89-
## 📊 数据存储 (Cloudflare KV)
122+
- 5个功能标签: API Keys / 客户端 Tokens / 用户管理 <sup>v3.0.0</sup> / 批量导入 / 统计分析
123+
- 实时刷新 (10秒轮询)
124+
125+
### auth.js <sup>v3.0.0</sup>
126+
- JWT Token 签名和验证
127+
- 邮箱注册/登录
128+
- 验证码发送与验证
129+
- Turnstile 人机验证
130+
- 用户会话管理
131+
132+
### email.js <sup>v3.0.0</sup>
133+
- push-all-in-one 集成
134+
- HTML 邮件模板
135+
- 验证码邮件发送
136+
- 频率限制(60s/次,10次/天)
137+
138+
### postgres.js
139+
- 用户表 (users) <sup>v3.0.0</sup>
140+
- 邮箱验证码表 (email_verification_codes) <sup>v3.0.0</sup>
141+
- 签到记录表 (user_signins) <sup>v3.0.0</sup>
142+
- API Keys 表
143+
- 客户端 Tokens 表
144+
- 统计数据表
145+
146+
## 📊 数据存储
147+
148+
### PostgreSQL (主存储)
149+
- `users`: 用户信息表 <sup>v3.0.0</sup>
150+
- `email_verification_codes`: 邮箱验证码 <sup>v3.0.0</sup>
151+
- `user_signins`: 签到记录 <sup>v3.0.0</sup>
152+
- `ollama_api_keys`: Ollama API Keys
153+
- `openrouter_api_keys`: OpenRouter API Keys
154+
- `ollama_client_tokens`: Ollama 客户端 Tokens
155+
- `openrouter_client_tokens`: OpenRouter 客户端 Tokens
156+
- `ollama_stats`: Ollama 统计数据
157+
- `openrouter_stats`: OpenRouter 统计数据
158+
159+
### Redis (缓存层)
160+
- 验证码缓存 <sup>v3.0.0</sup>
161+
- 验证码发送频率限制 <sup>v3.0.0</sup>
162+
- 每日发送次数限制 <sup>v3.0.0</sup>
163+
- 会话缓存
164+
- 统计数据缓存
165+
166+
### Cloudflare KV (可选备用)
90167

91168
### Key 前缀规则
92169
- `api_keys_list`: 主 Key 列表

0 commit comments

Comments
 (0)