docs(plan): 记录 HTTP/2 骨架完成状态

This commit is contained in:
xfy911 2026-06-04 14:40:27 +08:00
parent 6bb9635b2d
commit 42879cdafd

View File

@ -34,7 +34,7 @@
- [x] **配置文件支持** — JSON 配置替代纯命令行 ✅ 2026-06-04 - [x] **配置文件支持** — JSON 配置替代纯命令行 ✅ 2026-06-04
- [x] **Brotli 压缩** — 比 gzip 更高压缩率 ✅ 2026-06-04 - [x] **Brotli 压缩** — 比 gzip 更高压缩率 ✅ 2026-06-04
- [x] **HTTPS / TLS** — OpenSSL Memory BIO 集成,支持命令行与配置文件启用 ✅ 2026-06-04 - [x] **HTTPS / TLS** — OpenSSL Memory BIO 集成,支持命令行与配置文件启用 ✅ 2026-06-04
- [ ] HTTP/2 - [ ] HTTP/2 — nghttp2 骨架完成(编译通过),待 server.c 集成 ✅ 2026-06-04
- [ ] Windows 兼容性 - [ ] Windows 兼容性
### Phase 4 — 生态 ### Phase 4 — 生态
@ -51,7 +51,7 @@
- POST 支持JSON 和 form-urlencoded 回显multipart 文件上传Content-Length 解析8MB 上限 - POST 支持JSON 和 form-urlencoded 回显multipart 文件上传Content-Length 解析8MB 上限
- **配置文件支持**JSON 格式8 个字段,命令行参数可覆盖 - **配置文件支持**JSON 格式8 个字段,命令行参数可覆盖
- **TLS/HTTPS**OpenSSL 3.0 Memory BIO + coco 协程集成自签名证书支持sendfile 降级为缓冲读写 - **TLS/HTTPS**OpenSSL 3.0 Memory BIO + coco 协程集成自签名证书支持sendfile 降级为缓冲读写
- README / Makefile 已更新 - **HTTP/2**nghttp2 骨架完成(编译通过),流管理、回调框架就绪,待 server.c 集成ALPN 协商、h2c 升级)
## 待办池 ## 待办池
@ -62,6 +62,16 @@
## 最近行动记录 ## 最近行动记录
- **2026-06-04: 本轮行动 — HTTP/2 骨架实现**
- 新增 `http2.c` / `http2.h`:基于 nghttp2 的 HTTP/2 会话管理
- 会话管理fd → session 映射,最大 1024 并发会话
- 流管理:链表结构,支持请求解析和响应发送
- nghttp2 回调send/receive、header 解析、frame 接收、stream 关闭
- 修复编译:匹配 `http_request_t` 结构(`num_headers`/`headers[]`),使用 `log_error` 替代 `LOG_ERROR`
- Makefile加入 `http2.c`、链接 `-lnghttp2`
- 编译通过,零警告(除 coco 子模块 linker 提示)
- 推送到 main
- **待完成**server.c 集成TLS ALPN 协商、明文 h2c 升级魔术字检测)
- **2026-06-04: 本轮行动 — 实现 TLS/HTTPS 支持** - **2026-06-04: 本轮行动 — 实现 TLS/HTTPS 支持**
- 新增 `tls.c` / `tls.h`OpenSSL 3.0 Memory BIO 与 coco 协程 I/O 集成 - 新增 `tls.c` / `tls.h`OpenSSL 3.0 Memory BIO 与 coco 协程 I/O 集成
- `cocoon.h`:新增 `tls_enabled`, `tls_cert`, `tls_key` 配置字段 - `cocoon.h`:新增 `tls_enabled`, `tls_cert`, `tls_key` 配置字段