C++ tinyWebServer [零]
Posted 高性能linux后台开发
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++ tinyWebServer [零]相关的知识,希望对你有一定的参考价值。
学习linux和后台开发需要注重实战,可以根据这个项目练下手。
代码基础是根据游双书上的代码,修改了一些东西,他的代码不能发送大文件,writev也有点问题(不清楚有没有发布fix)。
目前功能,访问文件,图片。写好html页面的话自然也是可以访问的。小伙伴们可以用来练下手。
用到的技术: epoll,基础socket,线程,线程池,http解析。
书里只是简单附上了代码,并没有过多讲解。知识面也比较广,有些地方并没有说明,初学者可能会看的稀里糊涂,所以我后续会陆续讲解整个项目。
大致分以下部分,基础socket使用,pthread线程和线程池使用,epoll多路复用,reactor和http的理论知识以及C/C++解析的大致流程,vscode 远程工具的使用及问题分析。
把代码开源到了github。
https://github.com/hqingLau/tinyWebServer
以下是README:
Tiny web server for study usage. Put files in /var/www/html.You can learn threadpool, epoll, http parsing... from here.
Example:
visit a.html in browser.
ref code: 《Linux高性能服务器编程》
Fixed some problems, such as big file transfering, writev error.
以上是关于C++ tinyWebServer [零]的主要内容,如果未能解决你的问题,请参考以下文章
c++ 经典服务器开源项目 Tinywebserver的使用与配置(百度智能云服务器安装ubuntu18.04可用公网ip访问)
用线程池实现的简单web服务器--tinywebserver
在第 7 行调用 C:\wamp\www\Webs\client.php 中未定义的函数 sqlsrv_connect()