一个C语言的简单HTTP 服务器—TinyHttpd

关于TinyHttpd源码内容的介绍,网上已有很多非常棒的博文,因此本文不在赘述。本文主要介绍测试方法,运行环境:Ubunu16.04 。TinyHttpd源码详细讲解,推荐阅读如下两篇博文:

《TinyHTTPd--超轻量型Http Server源码分析》

《HTTP服务器的本质:tinyhttpd源码分析及拓展》

1. 下载TinyHttpd-0.1.0源码(官网

(1)修改 tinyhttpd-0.1.0/Makefile 内容如下:

修改前编译内容:
gcc -W -Wall -lsocket -lpthread -o httpd httpd.c

修改后编译内容:
gcc -o httpd httpd.c -Wall -lpthread

**  注意: 4 spaces 和 1个tab的区别。******

(2)查找perl路径,并修改cgi脚本内容

which perl

#根据输出路径,修改如下两个脚本
vim tinyhttpd-0.1.0/htdocs/color.cgi 
vim tinyhttpd-0.1.0/htdocs/check.cgi

修改首行内容:
#!/usr/local/bin/perl -Tw

修改后内容:
#!/usr/bin/perl -Tw

(3)更改 index.html 访问权限

sudo chmod -R 600 tinyhttpd-0.1.0/htdocs/index.html

2. 切换到 tinyhttpd目录,编译运行

cd tinyhttpd-0.1.0
make
./httpd

图片

3. 通过浏览器访问

127. 0.0.1:端口

注意:此处端口号为步骤2运行打印的端口。

4. 运行结果

图片

评论 (0)

暂无评论,快来抢沙发吧!

发表评论