最近项目中需要启动HTTP/HTTPS
服务器,但是不能使用开源的服务器代码,需要用C语言纯手工从0到1去写。于是就按照自己的构想去实现了一个轮子,最终的成品和自己的构想一致。整体过程很有意义,于是想把整个历程总结一下,其中涉及到很多编程的基本知识和技巧。如有兴趣可以和我一起边想边写。
整个系列将开放在GITEE
仓库上https://gitee.com/popzilla/pophttp,计划将按照课程来一步步迭代开发。课程安排如下:
- HTTP服务器模型介绍
- 造一个简单的事件框架轮子
- 实现消息收发echo
- HTTP请求协议解析
- 服务器路由分发
- HTTP响应协议解析
- 服务器异步回应框架
- PKI介绍
- 支持SSL加密传输
- 支持双向认证
- 服务端安全加固