关于ubuntu系统安装thttpd服务的有效方法
thttpd是一个非常小巧的轻量级web server,它非常非常简单,仅仅提供了HTTP/1.1和简单的CGI支持,在其官方网站上有一个与其他web server(如Apache, Zeus等)的对比图+Benchmark,可以参考参考。此外,thttpd 也类似于lighttpd,对于并发请求不使用fork()来派生子进程处理,而是采用多路复用(Multiplex)技术来实现。因此效能很好。
thttpd支持多种平台,如FreeBSD, SunOS, Solaris, BSD, Linux, OSF等。对于小型web server而言,速度快似乎是一个代名词,通过官方站提供的Benchmark,可以这样认为:thttpd至少和主流的web server一样快,在高负载下更快,因为其资源占用小的缘故。
thttpd还有一个较为引人注目的特点:基于URL的文件流量限制,这对于下载的流量控制而言是非常方便的。象Apache就必须使用插件实现,效率较thttpd低。
官网:http://www.acme.com/software/thttpd/
测试环境:Ubuntu16.04 + Vm ware16
这里要注意一下:建议在 ubuntu 低版本上安装使用,我在20版本上安装各种奇葩的错,怎么尝试都不行。最后在16版本上安装,直接 就安装成功!!!
1. 下载
wget http://www.acme.com/software/thttpd/thttpd-2.29.tar.gz
tar -zxvf thttpd-2.29.tar.gz
cd thttpd-2.29/
2. 编译&安装
./configure
make
sudo make install
注:
1)在执行sudo make install时会提示以下错误:
chgrp: invalid group: ‘www’
Makefile:70: recipe for target 'install' failed
make[1]: *** [install] Error 1
make[1]: Leaving directory '/home/baoli/tools/thttpd/thttpd-2.29/extras'
Makefile:121: recipe for target 'installsubdirs' failed
make: *** [installsubdirs] Error 2
需要添加www组:
sudo addgroup www
3. 配置
3.1 复制配置文件thttpd.conf
进行到 thttpd的解压目录。
执行 find -name thttpd.conf
会出现 ./contrib/redhat-rpm/thttpd.conf 文件。
cd /usr/local/www/
sudo mkdir thttpd
sudo cp ./contrib/redhat-rpm/thttpd.conf /usr/local/www/thttpd/
配置文件 需要修改地方:可能会出现无法修改文件 的情况。需要修改文件的属性,可读可写。
# This section overrides defaults
dir=/home/httpd/html
chroot
user=httpd# default = nobody
logfile=/var/log/thttpd.log
pidfile=/var/run/thttpd.pid
# This section _documents_ defaults in effect
# port=80
# nosymlink# default = !chroot
# novhost
# nocgipat
# nothrottles
# host=0.0.0.0
# charset=iso-8859-1
1)dir=/home/baoli/tools/thttpd/html,是存储发布文件目录的地方,例如html ,图片,视频 等
bop01@ubuntu:~/tools/thttpd/html$ ls
amber.png gcov glass.png index-sort-f.html ruby.png updown.png
emerald.png gcov.css index.html index-sort-l.html snow.png
2)user=thttpd# default = nobody,修改为一个有效用户,我是改有root。
其它位置按需要修改。
4. 测试
4.1 启动server
sudo thttpd -C /usr/local/www/thttpd/thttpd.conf
4.2 访问服务
1)Ubuntu系统
在浏览器输入:
http://127.0.0.1/
或者http://192.168.0.104/ (Ubuntu IP地址)
2)windows系统
在浏览器输入:要输入一个ip地址才可以。
http://192.168.0.104/