一个C语言的简单HTTP 服务器—TinyHttpd
admin 于 2018年07月22日 发表在 嵌入式linux开发
关于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. 运行结果