• Stars
    star
    1,210
  • Rank 38,721 (Top 0.8 %)
  • Language
    C
  • Created almost 5 years ago
  • Updated over 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

一款可运行的基于C++ 实现的WebServer服务器,基于《TCPIP网络编程》和《Linux高性能服务器编程》实现的服务器项目。

一款可运行的基于C++11 实现的HTTP服务器

1、简介

0、插入一条更新

给大家一个思路,我把基于C++版本的项目删除,只留下以前写的基于C的项目,如果能够在C的基础上将之改写为C++版本,就变成你的项目了。

按照 【2、编译】中的步骤还是可以顺利运行的,可以自行尝试~

1、由来

该项目是基于C++ 实现的HTTP服务器,也就是那种烂大街的WebServe服务器,不过由于是自己动手做的,所以还是很有意义的就上传上来了。

该项目也是阿秀自己在2020年找工作时简历上的第二个项目。

关于项目的详细功能介绍请看该文章的项目描述处:一份百投百中的计算机校招简历是如何迭代足足26版的?

(如果有需要简历模板的同学可以看一下上面这篇文章的文末处,有我个人的简历模板下载方式)

2、其余

如果还有对该项目有疑问的同学可以加我个人微信:coderxiu2,我会在工作之余进行免费答疑。

最好在看过文末的两本书即《TCPIP网络编程》和《Linux高性能服务器编程》或者对于C++网络编程有一定了解后,再来进行实践本项目。

2、编译

请严格按照下面步骤进行编译

1、编译准备工作

文件夹中的 post.html 以及 post.cgi 文件需要一定的权限才可以执行。

所以需要先进行权限给予。

第一步、克隆项目并给予足够权限,打开命令行依次输入下述命令:

git clone  https://github.com/forthespada/MyPoorWebServer

cd  httpdocs

sudo chmod 600 test.html

sudo chmod 600 post.html

sudo chmod +X post.cgi

在进行sudo命令时,需要输入Linux下的sudo命令。

如下图所示:

如果忘记自己设置的sudo密码,可以按照如下教程进行密码重置:sudo密码重置

2、编译执行

依次输入下述命令即可。

cd  ../

make

./myhttp

3、整体过程图

1、项目默认端口号是6379,如像下图地址栏所示,默认显示的界面是是test.html界面。

2、运行成功后默认显示的为test.html界面,同时同一路径下还有 post.html界面,可以将地址栏的“test.html”改成“post.html”来进行查看。

4、整体框架图

6、参考资料

《TCPIP网络编程》-韩国-尹圣雨

《Linux高性能服务器编程》-中国-游双

https://www.cnblogs.com/qiyeboy/p/6296387.html

https://www.jianshu.com/p/18cfd6019296

More Repositories

1

CS-Books

🔥🔥超过1000本的计算机经典书籍、个人笔记资料以及本人在各平台发表文章中所涉及的资源等。书籍资源包括C/C++、Java、Python、Go语言、数据结构与算法、操作系统、后端架构、计算机系统知识、数据库、计算机网络、设计模式、前端、汇编以及校招社招各种面经~
20,446
star
2

InterviewGuide

🔥🔥「InterviewGuide」是阿秀从校园->职场多年计算机自学过程的记录以及学弟学妹们计算机校招&秋招经验总结文章的汇总,包括但不限于C/C++ 、Golang、JavaScript、Vue、操作系统、数据结构、计算机网络、MySQL、Redis等学习总结,坚持学习,持续成长!
5,280
star
3

CampusShame

互联网仍有记忆!那些曾经在校招过程中毁过口头offer、意向书、三方的公司!纵然人微言轻,也想尽绵薄之力!
3,123
star
4

Awsome-Courses

😏国内外计算机的优秀课程,包含MIT、CMU等世界CS名校,🔥🔥其中包含计算机基础学科(操作系统、计算机网络、编译器、数据库、数据结构与算法等)以及人工智能&AI等高级科目,欢迎通过PR形式贡献!
1,149
star
5

developer-roadmap-zh-CN

💻 🇨🇳Roadmap to becoming a Internet software developer,校招技术岗学习路线图与资源推荐,成为一名研发工程师求职所需要的最少技能中文版,包括Java、C++、Golang、前端、Python等学习大纲、路线以及资源推荐。
587
star
6

CSLearning

开源项目之「计算机编程自学之路」:计算机自学指南+面试大全+资源分享+技术文章
334
star
7

E-commerce

国内三大电商网站,某东、某里、某美电商网站全站商品以及评论数据抓取,共计9000W余条数据。
122
star
8

LeetCodeInAction

2021年计算机校招求职力扣 + 剑指offer刷题记录~自始至终,始终坚持面向offer刷题~
102
star
9

programmer-resume

程序员简历,看完1000多份简历后,终于明白一份合格的计算机专业程序员简历应该是怎样的了,不需要花里胡哨,简简单单大大方方就足够了,可以star + folk后修改为自己的。
94
star
10

JD_Cellphone_KnowledgeGraph

京东小型知识图谱,包括具体手机的分类信息和商品的具体信息,以及手机评论和评论人的详细信息。
Python
52
star
11

forthespada

42
star
12

Awsome

😎「计算机淘金手册-中文版」立志收录各种酷炫、高大上、对小白友好的开源项目,包括但不限于Java、C++、Python、Golang、JavaScript、人工智能、机器学习、人工智能等相关项目。
14
star
13

forthespada.github.io

JavaScript
13
star
14

AwesomeGithub

🔥🔥🔥收集 GitHub 上高质量、有趣、沙雕的开源项目(⊙_⊙)
5
star
15

csbooks

超过1000本的计算机经典书籍、个人笔记资料以及本人在各平台发表文章中所涉及的资源等。书籍资源包括C/C++、Java、Python、Go语言、数据结构与算法、操作系统、后端架构、计算机系统知识、数据库、计算机网络、设计模式、前端、汇编以及校招社招各种面经~
4
star
16

InterviewCollection

计算机校招面经汇总,收集平台『牛客网、实习僧』等
3
star
17

mediaImage3

2
star
18

LearningNote

1
star
19

golang-wheel

自己在工作过程中造的Golang轮子,包括各种数据结构、Date、Time等处理函数。
Go
1
star
20

mediaImage1

1
star
21

vue_shop

JavaScript
1
star
22

mediaImage2

1
star
23

Interview

1
star