refactor: 目录结构重构和清理 (v2.0.2)
新增目录: - docs/legacy/ - 废弃文档归档 - scripts/ - 管理脚本和测试脚本 - build/ - 构建输出目录 文件移动: - GO_REFACTOR_PROGRESS.md -> docs/legacy/ - OPTIMIZATION_REPORT.md -> docs/legacy/ - sms-receiver-go-ctl.sh -> scripts/ - test_api.sh -> scripts/ 改进: - 更新 .gitignore 忽略运行时文件 - 新增 CHANGELOG.md 独立变更日志 - 更新 README.md 目录结构说明 - 更新 Makefile 版本号到 v2.0.2 - 更新管理脚本路径引用 清理: - 从仓库中移除二进制文件 - 从仓库中移除数据库文件 - 从仓库中移除日志文件 - 从仓库中移除配置文件
This commit is contained in:
137
README.md
137
README.md
@@ -49,35 +49,53 @@
|
||||
```
|
||||
SmsReceiver-go/
|
||||
├── main.go # 入口文件
|
||||
├── config.yaml # 配置文件
|
||||
├── config.example.yaml # 配置示例
|
||||
├── Makefile # 构建脚本
|
||||
├── Dockerfile # Docker 镜像
|
||||
├── docker-compose.yml # Docker Compose
|
||||
├── DEVELOPMENT.md # 开发文档
|
||||
├── OPTIMIZATION_REPORT.md # 优化报告
|
||||
├── auth/ # 认证模块
|
||||
│ ├── auth.go # 认证逻辑
|
||||
├── go.mod / go.sum # Go 依赖管理
|
||||
├── Makefile # 构建脚本
|
||||
├── config.example.yaml # 配置示例
|
||||
├── .gitignore # Git 忽略规则
|
||||
├── .dockerignore # Docker 忽略规则
|
||||
├── Dockerfile # Docker 镜像
|
||||
├── docker-compose.yml # 开发环境 Docker Compose
|
||||
├── docker-compose.production.yml # 生产环境 Docker Compose
|
||||
│
|
||||
├── README.md # 项目说明
|
||||
├── CHANGELOG.md # 变更日志
|
||||
├── DEVELOPMENT.md # 开发文档
|
||||
│
|
||||
├── docs/ # 文档目录
|
||||
│ └── legacy/ # 废弃文档归档
|
||||
│ ├── GO_REFACTOR_PROGRESS.md
|
||||
│ └── OPTIMIZATION_REPORT.md
|
||||
│
|
||||
├── scripts/ # 脚本目录
|
||||
│ ├── sms-receiver-go-ctl.sh # 服务管理脚本
|
||||
│ └── test_api.sh # API 测试脚本
|
||||
│
|
||||
├── auth/ # 认证模块
|
||||
│ └── password.go # 密码验证(bcrypt)
|
||||
├── config/ # 配置加载
|
||||
│ ├── config.go # 配置管理
|
||||
├── config/ # 配置加载
|
||||
│ └── constants.go # 常量定义
|
||||
├── database/ # 数据库操作
|
||||
│ └── database.go # CRUD + 事务
|
||||
├── handlers/ # HTTP 处理器
|
||||
│ ├── handlers.go # 主处理函数
|
||||
├── database/ # 数据库操作
|
||||
├── handlers/ # HTTP 处理器
|
||||
│ ├── middleware.go # 认证中间件
|
||||
│ └── health.go # 健康检查
|
||||
├── models/ # 数据模型
|
||||
│ └── message.go # 数据结构
|
||||
├── sign/ # 签名验证
|
||||
│ └── sign.go # HMAC-SHA256
|
||||
├── static/ # 静态资源
|
||||
├── templates/ # HTML 模板
|
||||
└── tools/ # 工具脚本
|
||||
├── models/ # 数据模型
|
||||
├── sign/ # 签名验证
|
||||
├── static/ # 静态资源
|
||||
├── templates/ # HTML 模板
|
||||
└── tools/ # 工具脚本
|
||||
└── password_hash.go # 密码哈希生成
|
||||
```
|
||||
|
||||
**运行时生成(不在仓库中)**:
|
||||
- `config.yaml` - 配置文件(需从 config.example.yaml 创建)
|
||||
- `sms_receiver_go.db` - SQLite 数据库
|
||||
- `sms_receiver.log` - 运行日志
|
||||
- `data/` - 数据目录
|
||||
- `logs/` - 日志目录
|
||||
- `build/` - 构建输出目录
|
||||
- `sms-receiver-v2` - 编译后的二进制文件
|
||||
|
||||
## 🚀 快速开始
|
||||
|
||||
### 方式 1: 使用预编译二进制(推荐)
|
||||
@@ -439,7 +457,7 @@ systemctl status sms-receiver-go # 状态
|
||||
|
||||
### 控制脚本
|
||||
|
||||
使用 `sms-receiver-go-ctl.sh`:
|
||||
使用 `scripts/sms-receiver-go-ctl.sh`:
|
||||
|
||||
```bash
|
||||
./sms-receiver-go-ctl.sh start # 启动服务
|
||||
@@ -452,8 +470,9 @@ systemctl status sms-receiver-go # 状态
|
||||
|
||||
## 📚 文档
|
||||
|
||||
- [变更日志](CHANGELOG.md) - 版本更新记录
|
||||
- [开发文档](DEVELOPMENT.md) - 详细的开发指南和 API 文档
|
||||
- [优化报告](OPTIMIZATION_REPORT.md) - v2.0.0 优化详情和变更记录
|
||||
- [优化报告](docs/legacy/OPTIMIZATION_REPORT.md) - v2.0.0 优化详情归档
|
||||
|
||||
## 🔒 安全建议
|
||||
|
||||
@@ -486,73 +505,5 @@ MIT License
|
||||
|
||||
## 📝 更新日志
|
||||
|
||||
### [v2.0.2] - 2026-02-12
|
||||
详细的版本更新记录请查看 [CHANGELOG.md](CHANGELOG.md)
|
||||
|
||||
#### 🐛 Bug 修复
|
||||
- ✅ 修复容器启动时找不到模板文件导致崩溃的问题
|
||||
- ✅ 修复 Dockerfile 缺少 `templates/` 和 `static/` 目录复制
|
||||
|
||||
#### 📦 Docker 改进
|
||||
- ✅ 完善多阶段构建,正确复制运行时所需文件
|
||||
- ✅ 新增 `docker-compose.production.yml` 生产环境配置
|
||||
- ✅ 预编译镜像推送到 Docker Hub (ouaone/sms-receiver-go:v2.0.2)
|
||||
- ✅ 验证容器可正常启动并通过健康检查
|
||||
|
||||
#### 📚 文档
|
||||
- ✅ 更新 README.md 镜像拉取说明
|
||||
- ✅ 更新版本标签显示
|
||||
|
||||
#### 🔧 兼容性
|
||||
- ✅ 与 v2.0.1 功能完全兼容
|
||||
- ✅ 数据库无需迁移
|
||||
- ✅ 配置文件无需变更
|
||||
|
||||
### [v2.0.1] - 2026-02-08
|
||||
|
||||
#### 🐛 Bug 修复
|
||||
- ✅ 修复登录会话创建失败问题(`securecookie: the value is not valid`)
|
||||
- ✅ 回退密钥处理逻辑确保向后兼容性
|
||||
- ✅ 改进会话初始化错误处理
|
||||
|
||||
#### 🔧 兼容性
|
||||
- ✅ 与 v2.0.0 Cookie 完全兼容,无需清除
|
||||
- ✅ 支持 `/api/v1/*` 和 `/api/*` 路由
|
||||
- ✅ 密钥长度不足时仅记录警告
|
||||
|
||||
### [v2.0.0] - 2026-02-08
|
||||
|
||||
#### 🔴 高优先级 (6项)
|
||||
- ✅ 数据库事务支持 (确保消息和日志一致性)
|
||||
- ✅ SQL 注入修复 (参数化查询)
|
||||
- ✅ 配置验证启动时自动检查
|
||||
- ✅ 会话密钥强化 (长度验证)
|
||||
- ✅ 签名验证增强 (详细记录验证过程)
|
||||
- ✅ 密码哈希支持 (bcrypt)
|
||||
|
||||
#### 🟡 中优先级 (15项)
|
||||
- ✅ 连接池配置 (MaxOpenConns, MaxIdleConns)
|
||||
- ✅ 查询优化 (范围查询, 索引)
|
||||
- ✅ 健康检查增强 (/health 端点)
|
||||
- ✅ API 版本控制 (/api/v1/*)
|
||||
- ✅ 认证中间件 (RequireAuth, RequireAPIAuth)
|
||||
- ✅ 定时任务优化 (robfig/cron)
|
||||
- ✅ 配置文件示例 (config.example.yaml)
|
||||
- ✅ 常量定义 (config/constants.go)
|
||||
- ✅ 开发文档 (DEVELOPMENT.md)
|
||||
|
||||
#### 🟢 低优先级 (9项)
|
||||
- ✅ Docker 支持 (Dockerfile, docker-compose.yml)
|
||||
- ✅ Makefile 构建脚本
|
||||
- ✅ 优化报告 (OPTIMIZATION_REPORT.md)
|
||||
- ✅ 密码哈希工具 (tools/password_hash.go)
|
||||
- ✅ 单元测试架构准备
|
||||
|
||||
#### 📦 文件变更
|
||||
- 新增文件: 14 个
|
||||
- 代码行数: +1523 / -101
|
||||
|
||||
### [v1.0.0] - 2026-02-08
|
||||
|
||||
- ✅ 初始版本发布
|
||||
- ✅ 完整功能实现
|
||||
- ✅ 对齐 Python 版本功能
|
||||
|
||||
Reference in New Issue
Block a user