精英盒子 -> 程序设计 -> 写了一个只有367行的httpd,支持图片,中文,下载等 [打印本页]

pdl 2012-06-16 19:33

写了一个只有367行的httpd,支持图片,中文,下载等

名字叫ShanZhai Httpd
编译要pcre库,先make,然后make install,卸载make uninstall
szhttpd就可以启动了
默认监听8080端口,html文件默认/var/www,配置文件在/etc/szhttpd/config.conf
配置文件格式
port 端口
max_connect 最大连接
addhost 域名 目录
addindex index.html等


[attachment=344]

jybox 2012-06-16 20:11
简单看了下,因为在用windows,没测试

感觉C和C++的标准库一起用好像很坑爹的样子.......
如果用C++标准库来进行字符串运算和文件读取,估计会短不少..

还有mime也归入配置文件好一点..

pdl 2012-06-16 20:16
不是很习惯stl,感觉c更适合我的胃口,呵呵
虽然最早学c++,可是我都用c的方法用c++

jybox 2012-06-16 20:17
我到现在还不会写makefile..

pdl 2012-06-16 20:19
jybox:[表情] 我到现在还不会写makefile.. (2012-06-16 20:17) 

其实就是
模式:
tab命令
比如
szhttpd:
\t(好像不支持tab..)g++ main.cpp -pcre -o szhttpd

jybox 2012-06-16 20:27
pdl:其实就是
模式:
tab命令
比如
....... (2012-06-16 20:19) 

还得自己分析依赖关系.......我还是用qmake吧....

pdl 2012-06-16 21:16
jybox:还得自己分析依赖关系.......我还是用qmake吧.... (2012-06-16 20:27) 

依赖可以用GNU Autoconf,configure就是用autoconf生成的

jybox 2012-06-16 21:21
pdl:依赖可以用GNU Autoconf,configure就是用autoconf生成的 (2012-06-16 21:16) 

我是说文件之间的依赖关系

比如a.cpp包含了a.h
那么如果a.h修改了,就需要重新编译a.cpp

pdl 2012-06-16 21:59
jybox:我是说文件之间的依赖关系
比如a.cpp包含了a.h
那么如果a.h修改了,就需要重新编译a.cpp (2012-06-16 21:21) 

cmake也很好

jybox 2012-06-16 22:14
pdl:cmake也很好 (2012-06-16 21:59) 

嗯  目测和qmake差不多

padme0amidala 2012-06-19 13:55
啊。。。膜拜。。。倒腾两天还没搞定Apache。。。




Powered by phpwind v8.7 Code ©2003-2011 phpwind
Time 0.041361 second(s),query:5 Gzip enabled