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

Tinywebserver:一个简易的web服务器

一个简易的web服务器:Tinywebserver

Linux下C++轻量级Web服务器(含源码和测试地址)

在第 7 行调用 C:\wamp\www\Webs\client.php 中未定义的函数 sqlsrv_connect()