简介:tinyhttpd是一个相对简单的网络服务器。 虽然非常简单,但tinyhttpd具有线程并处理基本的CGI脚本! 这是一个教育工具,用于演示http背后的概念。
源代码链接:https://sourceforge.net/projects/tinyhttpd/
之前在google上找了很多相关的资料,在这里总结一下如何改错(不喜勿喷),话不多说,上干货~
①修改MakeFile文件
原代码如图:
将第三行代码改为:
gcc -W -Wall -o httpd httpd.c -lpthread
接下来的错误都是httpd.c文件里的了~
②第33行:
需修改源码如下:
void accept_request(int)
修改后如下:
void *accept_request(void *)
注:接下来,行数可能会有点小偏差,因为添加了代码。
③第51行:类同②
需修改源码截图如下:
修改后截图如下:(红圈为修改部分)
④第77行:
需修改源码截图如下:
修改后截图如下:(红圈为修改部分)
⑤在第128行后面添加 return NULL;
需修改源码截图如下:
修改后截图如下:(红圈为修改部分)
⑥ 第497行:改为(void*)&client_sock
需修改源码截图如下:
修改后截图如下:(红圈为修改部分)
⑦第483行:(将 int 改为 socklen_t )
需修改源码截图如下:
修改后截图如下:(红圈为修改部分)
第 442行 :(将 int 改为 socklen_t )
需修改源码截图如下:
修改后截图如下:(红圈为修改部分)
这样,错误就全部改完啦,make clean后再make一下,发现错误都没啦,开心到飞起~
觉得不错,给个赞支持一下啦~
谢谢支持~
最后,顺便给出源码分析相关的博客,转自:https://blog.csdn.net/yzhang6_10/article/details/51534409