一、什么是thttpd
thttpd是一款高性能、轻量级的Web服务器,它的代码量很小,但是性能却非常强劲。thttpd的特点是占用资源少,支持CGI/1.1、FastCGI以及SSL,可在较小的系统上运行,这使得它成为大量嵌入式和嵌入式Linux系统的首要选择。
二、安装和配置thttpd
1、安装:thttpd可以从官网https://acme.com/software/thttpd/下载。 下面是源代码安装过程:
//下载源代码 $ wget https://acme.com/software/thttpd/thttpd-2.29.tar.gz //解压缩 $ tar -zxvf thttpd-2.29.tar.gz //进入目录 $ cd thttpd-2.29 //配置、编译并安装 $ ./configure && make && make install
2、配置:thttpd的配置非常简单,只需修改一个名为thttpd.conf的文件,该文件位于thttpd的安装目录下。下面是一份简单的thttpd.conf配置文件:
dir=/usr/local/www port=80 host=127.0.0.1 user=www-data logfile=/var/log/thttpd.log pidfile=/var/run/thttpd.pid mime_types=( ".html" "text/html" ".txt" "text/plain" ".jpg" "image/jpeg" ".gif" "image/gif" ".png" "image/png" ) cgi_extensions=( ".cgi" ".pl" ".rb" ".py" ) default_type="text/plain" index_files=("index.html" "index.htm") verbose=0
三、使用thttpd
1、静态文件-serving
thttpd的主要目的是为Web浏览器提供静态文件-serving的服务。为此,thttpd通过HTTP协议处理不断到达的请求并将它们用响应发送回请求该服务的浏览器。如果请求的文件存在且可读,则在响应中将包含该文件的内容(静态文件-serving)。同样,如果请求的文件不存在或不可读,则thttpd将返回“404 Not Found”HTTP响应代码。
2、CGI编程
CGI是一种用于Web服务器的协议,用于与基于Web的脚本语言交互。thttpd可使用CGI在Web服务器和一个脚本语言之间传递数据。只需将脚本防止在特定的文件夹中,让thttpd知晓该目录,thttpd就可以访问它并将参数送到脚本中进行处理。下面是一个简单的Perl脚本示例,该脚本位于thttpd的cgi-bin文件夹中:
#!/usr/bin/perl print <<"EOF"; Content-type: text/html\n\nMy CGI Script My CGI Script
Hello, World!