feat: v1.1.0 安全重构
- 后台添加登录验证(Session + JWT双重验证) - JSON存储改为SQLite数据库,解决并发问题 - API密钥移至config.py,支持环境变量覆盖 - SECRET_KEY改为随机生成 - 新增管理员登录页面 - 修复README.md乱码 - 更新.gitignore忽略敏感配置
This commit is contained in:
@@ -22,6 +22,13 @@
|
||||
- 手机号(可选)
|
||||
- 密码确认
|
||||
|
||||
### 🔐 后台管理
|
||||
- 管理员登录验证
|
||||
- 用户管理
|
||||
- 帖子管理(置顶、删除)
|
||||
- 主题管理
|
||||
- 数据统计
|
||||
|
||||
## 快速开始
|
||||
|
||||
### 安装依赖
|
||||
@@ -30,6 +37,20 @@
|
||||
pip install -r requirements.txt
|
||||
```
|
||||
|
||||
### 配置(可选)
|
||||
|
||||
可以创建 `config.local.py` 覆盖默认配置:
|
||||
|
||||
```python
|
||||
# 管理员账户
|
||||
ADMIN_USERNAME = 'your_admin'
|
||||
ADMIN_PASSWORD = 'your_password'
|
||||
|
||||
# 或使用环境变量
|
||||
export TECH_FORUM_ADMIN_USER='your_admin'
|
||||
export TECH_FORUM_ADMIN_PASS='your_password'
|
||||
```
|
||||
|
||||
### 启动主服务
|
||||
|
||||
```bash
|
||||
@@ -46,12 +67,16 @@ python admin/app.py
|
||||
|
||||
后台地址: http://localhost:19005
|
||||
|
||||
默认账号: admin / admin123
|
||||
|
||||
## 项目结构
|
||||
|
||||
```
|
||||
tech-forum/
|
||||
├── config.py # 配置文件
|
||||
├── models.py # 数据库模型(SQLite)
|
||||
├── backend/
|
||||
│ └── app.py # Flask�端
|
||||
│ └── app.py # Flask后端API
|
||||
├── frontend/
|
||||
│ ├── index.html # 首页
|
||||
│ ├── login.html # 登录
|
||||
@@ -60,12 +85,17 @@ tech-forum/
|
||||
│ ├── post.html # 帖子详情
|
||||
│ ├── topic.html # 主题详情
|
||||
│ └── user.html # 用户主页
|
||||
├── admin/
|
||||
│ ├── app.py # 后台管理(带登录验证)
|
||||
│ └── templates/
|
||||
│ ├── index.html # 仪表盘
|
||||
│ ├── login.html # 管理员登录
|
||||
│ ├── users.html # 用户管理
|
||||
│ ├── posts.html # 帖子管理
|
||||
│ └── topics.html # 主题管理
|
||||
├── data/
|
||||
│ ├── users.json # 用户数�
|
||||
│ ├── posts.json # 帖å�æ•°æ�®
|
||||
│ └── topics.json # 主题数�
|
||||
├── uploads/ # ä¸Šä¼ æ–‡ä»¶
|
||||
└── README.md
|
||||
│ └ tech_forum.db # SQLite数据库(自动创建)
|
||||
└── uploads/ # 上传文件
|
||||
```
|
||||
|
||||
## API接口
|
||||
@@ -95,8 +125,38 @@ tech-forum/
|
||||
- GET /api/tags - 获取热门标签
|
||||
- GET /api/search - 搜索
|
||||
|
||||
## 安全改进
|
||||
|
||||
### v1.1.0 重构内容
|
||||
|
||||
1. **后台登录验证**
|
||||
- 所有后台API需要管理员登录
|
||||
- Session + JWT双重验证
|
||||
- 未登录自动跳转登录页
|
||||
|
||||
2. **配置文件分离**
|
||||
- 敏感信息移至 `config.py`
|
||||
- 支持环境变量覆盖
|
||||
- SECRET_KEY 自动随机生成
|
||||
|
||||
3. **SQLite数据库**
|
||||
- 替换JSON文件存储
|
||||
- 解决并发写入问题
|
||||
- 数据关系完整性
|
||||
|
||||
4. **API密钥保护**
|
||||
- LLM密钥从代码移至配置
|
||||
- 支持环境变量设置
|
||||
|
||||
## 版本历史
|
||||
|
||||
### v1.1.0 (2026-04-12)
|
||||
- 重构:后台添加登录验证
|
||||
- 重构:JSON存储改为SQLite数据库
|
||||
- 重构:API密钥移至配置文件
|
||||
- 修复:SECRET_KEY改为随机生成
|
||||
- 新增:管理员登录页面
|
||||
|
||||
### v0.1.0 (2026-04-08)
|
||||
- 初始版本
|
||||
- 技术交流帖子功能
|
||||
@@ -106,9 +166,4 @@ tech-forum/
|
||||
|
||||
## License
|
||||
|
||||
MIT™»å½•
|
||||
- 评论回�点赞
|
||||
|
||||
## License
|
||||
|
||||
MIT
|
||||
Reference in New Issue
Block a user