feat: v2.6.0 - API安全优化和文档整合

## 核心优化
- 移除详情页自动调用博查API的逻辑,改为按需加载
- 添加基于IP的频率限制(每小时3次)
- 实现验证码防护机制(超过阈值后要求验证)
- 新增频率限制工具类 utils/rate_limiter.py

## 成本控制
- API调用减少约90%+(只在用户点击时调用)
- 防止恶意滥用和攻击
- 可配置的频率限制和验证码策略

## 文档整合
- 创建 docs/ 目录结构
- 归档历史版本文档到 docs/archive/
- 移动部署文档到 docs/deployment/
- 添加文档索引 docs/README.md

## 技术变更
- 新增依赖: Flask-Limiter==3.5.0
- 修改: app.py (移除自动调用,新增API端点)
- 修改: templates/detail_new.html (按需加载UI)
- 新增: utils/rate_limiter.py (频率限制和验证码)
- 新增: docs/archive/DEVELOP_v2.6.0_API_SECURITY.md

## 部署说明
1. pip install Flask-Limiter==3.5.0
2. 重启应用
3. 无需数据库迁移

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
Jowe
2026-02-06 15:54:13 +08:00
parent c1a06ad684
commit 939717fa57
27 changed files with 1670 additions and 140 deletions

View File

@@ -0,0 +1,94 @@
# 1Panel部署快速指南
## 简化部署步骤
### 1. 准备工作(本地)
1. 压缩项目:
```bash
# 排除不需要的文件
zip -r zjpb.zip . -x "*.pyc" "*__pycache__*" "*.git*" ".env" "venv/*" "test_*.py"
```
### 2. 服务器操作
#### 2.1 上传并解压
```bash
cd /www/wwwroot
mkdir zjpb
cd zjpb
# 上传zjpb.zip到此目录
unzip zjpb.zip
```
#### 2.2 一键部署脚本
```bash
# 赋予执行权限
chmod +x deploy.sh
# 执行部署
./deploy.sh
```
### 3. 配置数据库
在1Panel中创建数据库
- 名称ai_nav
- 用户ai_nav_user
- 密码:(记录下来)
### 4. 配置环境变量
编辑 `.env` 文件:
```bash
nano .env
```
填写数据库信息和密钥。
### 5. 初始化
```bash
source venv/bin/activate
python init_db.py
```
### 6. 启动服务
**方法1: 使用管理脚本**
```bash
chmod +x manage.sh
./manage.sh start
```
**方法2: 使用1Panel**
在1Panel中创建反向代理网站指向 `http://127.0.0.1:5000`
### 7. 访问
- 前台http://your-domain.com
- 后台http://your-domain.com/admin/login
- 默认账号admin / admin123
---
## 快速命令参考
```bash
# 启动应用
./manage.sh start
# 停止应用
./manage.sh stop
# 重启应用
./manage.sh restart
# 查看状态
./manage.sh status
# 查看日志
./manage.sh logs
```
详细部署文档请查看:`DEPLOYMENT.md`