windows下C++实现的HTTP web 服务器

上传者: woshiyuanlei | 上传时间: 2019-12-21 18:57:27 | 文件大小: 117KB | 文件类型: rar
测试方式(依次在浏览器输入一下内容进行不同情形的测试): 127.0.0.1:9988 127.0.0.1:9988/hehe.html 127.0.0.1:9988/login.html 127.0.0.1:9988/haha?x=10&y=20 也可以下载fiddler工具进行更全面的模拟测试! 1、支持GET/POST方法 2、支持CGI 3、支持错误返回 4、支持chunked数据的解析 缺点: 1、支持的方法不够全面 2、CGI实现不够科学,可以尝试使用FASTCGI 3、不支持https 4、不支持回应chunked数据 感兴趣的同学可以继续完善相关功能.

文件下载

资源详情

[{"title":"( 81 个子文件 117KB ) windows下C++实现的HTTP web 服务器","children":[{"title":"webserver","children":[{"title":"main.cpp <span style='color:#111;'> 5.38KB </span>","children":null,"spread":false},{"title":"复件 HttpServer.cpp <span style='color:#111;'> 8.90KB </span>","children":null,"spread":false},{"title":"HttpServer.cpp <span style='color:#111;'> 27.72KB </span>","children":null,"spread":false},{"title":"webserver.vcxproj.user <span style='color:#111;'> 489B </span>","children":null,"spread":false},{"title":"Debug","children":[{"title":"webserver.lastbuildstate <span style='color:#111;'> 53B </span>","children":null,"spread":false},{"title":"webserver.tlog","children":[{"title":"webserver.lastbuildstate <span style='color:#111;'> 168B </span>","children":null,"spread":false},{"title":"link.read.1.tlog <span style='color:#111;'> 3.63KB </span>","children":null,"spread":false},{"title":"link.command.1.tlog <span style='color:#111;'> 1.13KB </span>","children":null,"spread":false},{"title":"CL.write.1.tlog <span style='color:#111;'> 1.69KB </span>","children":null,"spread":false},{"title":"cl.command.1.tlog <span style='color:#111;'> 1.26KB </span>","children":null,"spread":false},{"title":"CL.read.1.tlog <span style='color:#111;'> 60.12KB </span>","children":null,"spread":false},{"title":"link.write.1.tlog <span style='color:#111;'> 498B </span>","children":null,"spread":false}],"spread":true},{"title":"webserver.Build.CppClean.log <span style='color:#111;'> 1014B </span>","children":null,"spread":false},{"title":"webserver.log <span style='color:#111;'> 706B </span>","children":null,"spread":false}],"spread":true},{"title":"webserver.vcxproj.filters <span style='color:#111;'> 1.22KB </span>","children":null,"spread":false},{"title":"HttpServer.h <span style='color:#111;'> 4.76KB </span>","children":null,"spread":false},{"title":"webserver.vcxproj <span style='color:#111;'> 4.22KB </span>","children":null,"spread":false},{"title":"复件 HttpServer.h <span style='color:#111;'> 1.29KB </span>","children":null,"spread":false}],"spread":true},{"title":"zaver-master","children":[{"title":"zaver-master","children":[{"title":"CMakeLists.txt <span style='color:#111;'> 225B </span>","children":null,"spread":false},{"title":".gitignore <span style='color:#111;'> 35B </span>","children":null,"spread":false},{"title":"README.md <span style='color:#111;'> 1.07KB </span>","children":null,"spread":false},{"title":"zaver.conf <span style='color:#111;'> 34B </span>","children":null,"spread":false},{"title":"tests","children":[{"title":"CMakeLists.txt <span style='color:#111;'> 242B </span>","children":null,"spread":false},{"title":"priority_queue_test.c <span style='color:#111;'> 4.70KB </span>","children":null,"spread":false},{"title":"thread_pool_test.c <span style='color:#111;'> 902B </span>","children":null,"spread":false},{"title":"list_test.c <span style='color:#111;'> 1.56KB </span>","children":null,"spread":false}],"spread":true},{"title":"LICENSE <span style='color:#111;'> 1.05KB </span>","children":null,"spread":false},{"title":"html","children":[{"title":"50x.html <span style='color:#111;'> 494B </span>","children":null,"spread":false},{"title":"index.html <span style='color:#111;'> 566B </span>","children":null,"spread":false}],"spread":true},{"title":"src","children":[{"title":"epoll.h <span style='color:#111;'> 459B </span>","children":null,"spread":false},{"title":"rio.c <span style='color:#111;'> 4.42KB </span>","children":null,"spread":false},{"title":"timer.c <span style='color:#111;'> 3.33KB </span>","children":null,"spread":false},{"title":"util.c <span style='color:#111;'> 2.89KB </span>","children":null,"spread":false},{"title":"timer.h <span style='color:#111;'> 756B </span>","children":null,"spread":false},{"title":"http_parse.h <span style='color:#111;'> 281B </span>","children":null,"spread":false},{"title":"http_request.c <span style='color:#111;'> 4.13KB </span>","children":null,"spread":false},{"title":"util.h <span style='color:#111;'> 547B </span>","children":null,"spread":false},{"title":"epoll.c <span style='color:#111;'> 1.13KB </span>","children":null,"spread":false},{"title":"priority_queue.h <span style='color:#111;'> 653B </span>","children":null,"spread":false},{"title":"http.h <span style='color:#111;'> 842B </span>","children":null,"spread":false},{"title":"http_parse.c <span style='color:#111;'> 9.48KB </span>","children":null,"spread":false},{"title":"dbg.h <span style='color:#111;'> 1006B </span>","children":null,"spread":false},{"title":"rio.h <span style='color:#111;'> 733B </span>","children":null,"spread":false},{"title":"http.c <span style='color:#111;'> 8.48KB </span>","children":null,"spread":false},{"title":"http_request.h <span style='color:#111;'> 2.42KB </span>","children":null,"spread":false},{"title":"threadpool.c <span style='color:#111;'> 5.32KB </span>","children":null,"spread":false},{"title":"zaver.c <span style='color:#111;'> 5.93KB </span>","children":null,"spread":false},{"title":"list.h <span style='color:#111;'> 2.17KB </span>","children":null,"spread":false},{"title":"threadpool.h <span style='color:#111;'> 1011B </span>","children":null,"spread":false},{"title":"priority_queue.c <span style='color:#111;'> 2.46KB </span>","children":null,"spread":false},{"title":"error.h <span style='color:#111;'> 147B </span>","children":null,"spread":false}],"spread":false}],"spread":true}],"spread":true},{"title":"bin","children":[{"title":"Win32","children":[{"title":"webserver.exe <span style='color:#111;'> 110.50KB </span>","children":null,"spread":false},{"title":"cgi-bin","children":[{"title":"webcgi.exe <span style='color:#111;'> 28.00KB </span>","children":null,"spread":false}],"spread":true},{"title":"50x.html <span style='color:#111;'> 494B </span>","children":null,"spread":false},{"title":"login.html <span style='color:#111;'> 2.54KB </span>","children":null,"spread":false},{"title":"index.html <span style='color:#111;'> 392B </span>","children":null,"spread":false},{"title":"favicon.ico <span style='color:#111;'> 7.23KB </span>","children":null,"spread":false},{"title":"test.jpg <span style='color:#111;'> 1.24KB </span>","children":null,"spread":false}],"spread":true}],"spread":true},{"title":"webserver.suo <span style='color:#111;'> 39.50KB </span>","children":null,"spread":false},{"title":"_UpgradeReport_Files","children":[{"title":"UpgradeReport.xslt <span style='color:#111;'> 12.21KB </span>","children":null,"spread":false},{"title":"UpgradeReport_Plus.gif <span style='color:#111;'> 71B </span>","children":null,"spread":false},{"title":"UpgradeReport.css <span style='color:#111;'> 3.27KB </span>","children":null,"spread":false},{"title":"UpgradeReport_Minus.gif <span style='color:#111;'> 69B </span>","children":null,"spread":false}],"spread":true},{"title":"webserver.sln.old <span style='color:#111;'> 973B </span>","children":null,"spread":false},{"title":"Clear.bat <span style='color:#111;'> 1.22KB </span>","children":null,"spread":false},{"title":"webcgi","children":[{"title":"main.cpp <span style='color:#111;'> 880B </span>","children":null,"spread":false},{"title":"webcgi.vcxproj.filters <span style='color:#111;'> 956B </span>","children":null,"spread":false},{"title":"Debug","children":[{"title":"webcgi.log <span style='color:#111;'> 2.87KB </span>","children":null,"spread":false},{"title":"webcgi.tlog","children":[{"title":"link.read.1.tlog <span style='color:#111;'> 3.22KB </span>","children":null,"spread":false},{"title":"link.command.1.tlog <span style='color:#111;'> 1010B </span>","children":null,"spread":false},{"title":"cl.command.1.tlog <span style='color:#111;'> 650B </span>","children":null,"spread":false},{"title":"webcgi.lastbuildstate <span style='color:#111;'> 168B </span>","children":null,"spread":false},{"title":"cl.write.1.tlog <span style='color:#111;'> 460B </span>","children":null,"spread":false},{"title":"CL.read.1.tlog <span style='color:#111;'> 11.91KB </span>","children":null,"spread":false},{"title":"link.write.1.tlog <span style='color:#111;'> 380B </span>","children":null,"spread":false}],"spread":true}],"spread":true},{"title":"webcgi.vcxproj <span style='color:#111;'> 4.04KB </span>","children":null,"spread":false},{"title":"webcgi.vcxproj.user <span style='color:#111;'> 165B </span>","children":null,"spread":false}],"spread":true},{"title":"webserver.sln <span style='color:#111;'> 1.40KB </span>","children":null,"spread":false},{"title":"UpgradeLog.XML <span style='color:#111;'> 903B </span>","children":null,"spread":false},{"title":"readme.txt <span style='color:#111;'> 435B </span>","children":null,"spread":false},{"title":"webserver.v12.suo <span style='color:#111;'> 49.00KB </span>","children":null,"spread":false}],"spread":true}]

评论信息

  • qq_29453807 :
    不错值得学习借鉴
    2020-05-14
  • beyond2323 :
    非常棒的我资源,感谢分享~!
    2020-04-26
  • ironox :
    不好用,代码质量很一般。
    2019-10-09
  • MouseLeft :
    谢谢,很好的资源
    2019-08-06
  • zhichao281 :
    谢谢,很好的资源
    2019-01-08

免责申明

【只为小站】的资源来自网友分享,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,【只为小站】 无法对用户传输的作品、信息、内容的权属或合法性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论 【只为小站】 经营者是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。
本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二条之规定,若资源存在侵权或相关问题请联系本站客服人员,zhiweidada#qq.com,请把#换成@,本站将给予最大的支持与配合,做到及时反馈和处理。关于更多版权及免责申明参见 版权及免责申明