xfy911
|
acda3b9c3e
|
feat(proxy): 反向代理负载均衡(轮询 + 故障转移)
- proxy.h: 重构数据结构,支持多后端(cocoon_proxy_backend_t)
- proxy.c: 实现轮询调度 + 自动故障转移(后端失败时尝试下一个)
- proxy.c: proxy_add_rule 支持同 prefix 追加后端,自动合并为多后端规则
- server.c: 匹配 proxy.h 新签名
- 编译零警告,142 单元测试 + 82 集成测试全部通过
|
2026-06-08 16:15:51 +08:00 |
|
xfy911
|
a86b8a4856
|
feat(proxy): HTTPS 反向代理后端支持
- 新增 proxy_tls.c/h:轻量级 OpenSSL 客户端封装
- proxy.c:支持 HTTPS 后端连接(TLS 握手 + SNI + 透传 X-Forwarded-Proto: https)
- 集成测试:新增 HTTPS 后端 Python 脚本 + 2 项代理测试
- 编译零警告,142 单元测试 + 82 集成测试全部通过
|
2026-06-08 11:37:30 +08:00 |
|
xfy911
|
1b930aa5e1
|
fix: 消除编译警告并修复测试清理逻辑
- 将 config.c 和 proxy.c 中的 strncpy 替换为 memcpy + 显式 null 结尾,
消除 GCC -Wstringop-truncation 警告
- 修复 integration_test.sh 的 kill_server 函数,补充对 -c 配置方式启动的
服务器进程的清理,避免端口占用导致后续测试失败
编译零警告,142 个单元测试 + 80 项集成测试全部通过
|
2026-06-07 06:06:59 +08:00 |
|
xfy911
|
cc06fc073f
|
feat(proxy): 实现反向代理支持
- 新增 proxy.h / proxy.c:路径前缀匹配 → HTTP/1.1 后端转发
- proxy_init/add_rule/match/forward API
- X-Forwarded-For / X-Forwarded-Proto 透传
- 目前仅支持 HTTP 后端,HTTPS 后端拒绝并警告
- cocoon.h:新增 COCOON_MAX_PROXY_RULES=8,cocoon_config_t 添加 proxies 数组
- config.c:JSON 解析器新增 proxies 数组解析(prefix + target)
- server.c:
- connection_t 新增 ctx 指针,用于 handle_request 访问代理配置
- handle_request 中在静态文件服务前检查代理规则
- Makefile:proxy.c 加入 SRCS 和 test_server 编译规则
- cocoon.json:示例配置添加 proxies 数组
- tests/integration_test.sh:新增 3 项反向代理集成测试
- .cocoon-plan.md:标记反向代理为已完成
编译零警告,142 个单元测试 + 80 项集成测试全部通过。
|
2026-06-07 03:09:10 +08:00 |
|