📄 thttpd.html
字号:
<HTML>
<HEAD><TITLE>thttpd</TITLE></HEAD>
<BODY BGCOLOR="#99cc99">
<!--AD_START-->
<DIV ALIGN="center"><CENTER>
<A HREF="tppmsgs/msgs0.htm#1" tppabs="http://www.acme.com/resources/ads/acme.cgi"><IMG WIDTH=470 HEIGHT=88 SRC="acme1.gif" tppabs="http://www.acme.com/resources/ads/acme1.gif" BORDER=0></A>
</CENTER></DIV>
<HR>
<CENTER><DIV ALIGN="center">
<FONT SIZE="+2"><B><A HREF="tppmsgs/msgs0.htm#2" tppabs="http://www.acme.com/donate/">Donate $5 to help support ACME Labs</A></B></FONT>
</DIV></CENTER>
<HR>
<!--AD_END-->
<IMG ALIGN="right" WIDTH=111 HEIGHT=64 SRC="anvil_thttpd.gif" tppabs="http://www.acme.com/software/thttpd/anvil_thttpd.gif">
<H3>thttpd - tiny/turbo/throttling HTTP server</H3>
<A HREF="thttpd-2.20b.tar.gz" tppabs="http://www.acme.com/software/thttpd/thttpd-2.20b.tar.gz">Fetch version 2.20b.</A>
<P>
thttpd is a simple, small, portable, fast, and secure HTTP server.
<DL>
<DT> Simple:
<DD> It handles only the minimum necessary to implement HTTP/1.1.
Well, maybe a little more than the minimum.
<DT> Small:
<DD> See the <A HREF="benchmarks.html" tppabs="http://www.acme.com/software/thttpd/benchmarks.html">comparison chart</A>.
It also has a very small run-time size, since it does not fork and
is very careful about memory allocation.
<DT> Portable:
<DD> It compiles cleanly on most any Unix-like OS, specifically including
FreeBSD, SunOS 4, Solaris 2, BSD/OS, Linux, OSF.
<DT> Fast:
<DD> In typical use it's about as fast as the best full-featured servers
(Apache, NCSA, Netscape).
Under extreme load it's much faster.
<DT> Secure:
<DD> It goes to great lengths to protect the web server machine against
attacks and breakins from other sites.
</DL>
It also has one extremely useful feature
(<A HREF="thttpd_man.html#THROTTLING" tppabs="http://www.acme.com/software/thttpd/thttpd_man.html#THROTTLING">URL-traffic-based throttling</A>)
that no other server currently has.
Plus, it supports
<A HREF="tppmsgs/msgs0.htm#6" tppabs="http://www.ipv6.org/">IPv6</A>
out of the box, no patching required.
<HR>
More specific info:
<UL>
<LI> <A HREF="thttpd_man.html" tppabs="http://www.acme.com/software/thttpd/thttpd_man.html">HTMLized man page</A>
<LI> <A HREF="notes.html" tppabs="http://www.acme.com/software/thttpd/notes.html">thttpd notes</A>
<LI> <A HREF="options.html" tppabs="http://www.acme.com/software/thttpd/options.html">options guide</A>
<LI> <A HREF="auxprogs.html" tppabs="http://www.acme.com/software/thttpd/auxprogs.html">auxiliary programs</A>
<LI> <A HREF="benchmarks.html" tppabs="http://www.acme.com/software/thttpd/benchmarks.html">web server comparisons</A>
<LI> <A HREF="tppmsgs/msgs0.htm#10" tppabs="http://www.mi4e.com/downloads/thttpd-win-2.07-beta-0.4.zip">a Windows port of thttpd 2.07</A>
<LI> <A HREF="web.html" tppabs="http://www.acme.com/software/thttpd/web.html">other web resources</A>
</UL>
<HR>
<IMG ALIGN="right" WIDTH=140 HEIGHT=132 SRC="bill.gif" tppabs="http://www.acme.com/software/thttpd/bill.gif">
<P>
How do you pronounce thttpd? Ask Bloom County's Bill the Cat, as seen in
<A HREF="tppmsgs/msgs0.htm#12" tppabs="http://www.userfriendly.org/">User Friendly</A>,
the excellent geek-positive comic.
<IMG ALIGN="left" WIDTH=155 HEIGHT=66 SRC="thttpd_powered_1.gif" tppabs="http://www.acme.com/software/thttpd/thttpd_powered_1.gif">
You can also use this fun Bill-based thttpd badge on your own web site
if you like.
It was drawn by Anatole Shaw.
<BR CLEAR="all">
<HR>
<P>
Are you using thttpd?
There's a mailing list:
<A HREF="mailto:thttpd@acme.com">thttpd@acme.com</A>
(<A HREF="mailto:thttpd-request@acme.com">thttpd-request@acme.com</A>
to subscribe,
<A HREF="tppmsgs/msgs0.htm#13" tppabs="http://lists.bikeworld.com/pipermail/thttpd/">archived here</A>).
And an announcements-only mailing list:
<A HREF="mailto:thttpd-announce@acme.com">thttpd-announce@acme.com</A>
(<A HREF="mailto:thttpd-announce-request@acme.com">thttpd-announce-request@acme.com</A>
to subscribe).
Also if you have any nice quotes I can use, send 'em in.
For instance:
<BLOCKQUOTE><I>
"I got thttpd compiled and running on the web server at work in no time
at all, or close enough for my purposes, and I really like it, and when I
told the rest of the crew what the footprint was they almost coughed up
their lunches."
</I><BLOCKQUOTE>
-- Martin Kelly
</BLOCKQUOTE></BLOCKQUOTE>
<BLOCKQUOTE><I>
"Our load averages have dropped significantly since we moved our
graphics to thttpd."
</I><BLOCKQUOTE>
-- Randy Cosby
</BLOCKQUOTE></BLOCKQUOTE>
<BLOCKQUOTE><I>
"i just grabbed thttpd and set it up on my personal box to test it out,
and i am amazed at how quick and easy that was.
i'm a hardcore apache expert but this was just phenomenally simple.
very refreshing."
</I><BLOCKQUOTE>
-- Jon Drukman
</BLOCKQUOTE></BLOCKQUOTE>
<BLOCKQUOTE><I>
"I switched to thttpd on my underpowered server about 20 minutes after
downloading it."
</I><BLOCKQUOTE>
-- Daniel Quinlan
</BLOCKQUOTE></BLOCKQUOTE>
<BLOCKQUOTE><I>
"I just wanted to let you know that I installed thttpd
and it works really great.
The server is a P3/500 w/512 megs running FreeBSD 3.3 and when it
was using apache it was at about 11 load average and kept throwing connections
and errors.
Now it runs dandy with thttpd and the load average is between 0.1 and 0.2.
The thttpd process is at about 200 megs size and the system is usually 60% idle.
The machine serves about 400 simultaneous connections (more on peak hours)."
</I><BLOCKQUOTE>
-- Petru Paler
</BLOCKQUOTE></BLOCKQUOTE>
<BLOCKQUOTE><I>
"I just upgraded my htdocs development box from apache to thttpd.
I was looking for a httpd that would use less memory - I found
one that was faster and easier to use as well :)"
</I><BLOCKQUOTE>
-- David Brownlee
</BLOCKQUOTE></BLOCKQUOTE>
<BLOCKQUOTE><I>
"We are using thttpd to serve all of our images.
We are a huge traffic site.
We moved about a month ago from a barebones apache.
The load on our web servers dropped dramatically, as did the memory usage!
woohoo!"
</I><BLOCKQUOTE>
-- Jeremy from care2.com
</BLOCKQUOTE></BLOCKQUOTE>
<BLOCKQUOTE><I>
"Configuration: Athlon 700, 800MB RAM.
Before: Apache, load=170, machine unusable, capped at 4Mbits, SWAPPING.
After: thttpd, load=.09 (yes, that's point-zero-nine), happy at 8Mbits, only
using ~300MB of RAM."
</I><BLOCKQUOTE>
-- Jon Oringer
</BLOCKQUOTE></BLOCKQUOTE>
Some major sites running thttpd:
<UL>
<LI> <A HREF="tppmsgs/msgs0.htm#14" tppabs="http://www.demon.net/">demon.net</A>, Demon Internet, a large UK ISP
<LI> <A HREF="tppmsgs/msgs0.htm#15" tppabs="http://www.global.net.uk/">global.net.uk</A>, Global Internet, another large UK ISP
<LI> <A HREF="tppmsgs/msgs0.htm#16" tppabs="http://www.bluelight.com/">bluelight.com</A>, Kmart's web site
<LI> <A HREF="tppmsgs/msgs0.htm#17" tppabs="http://img.gamespot.com/">img.gamespot.com</A>, GameSpot's image server
<LI> <A HREF="tppmsgs/msgs0.htm#18" tppabs="http://download.napster.com/">download.napster.com</A>, Napster's download server
<LI> <A HREF="tppmsgs/msgs0.htm#19" tppabs="http://www.stephenking.com/">stephenking.com</A>, Stephen King's official site
</UL>
<HR>
<P>
On Red Hat Linux systems you can use RPM to install thttpd, like so:
<BLOCKQUOTE><CODE><PRE>
cd /usr/src/redhat/SOURCES
wget http://www.acme.com/software/thttpd/thttpd-2.20b.tar.gz
rpm -ta thttpd-2.20b.tar.gz
rpm -i /usr/src/redhat/RPMS/i386/thttpd-2.20b-1.i386.rpm
</PRE></CODE></BLOCKQUOTE>
<HR>
<!--
New in version 2.21:
<UL>
<LI> ANSI compile nits in timers.h and libhttpd.c.
I thought I had already fixed these.
<LI> Two small fixes to USR1 signal handling.
Should be more reliable now.
<LI> Fixed the "throttle sending count was negative" bug.
<LI> 503 Service Overloaded errors were not getting logged.
<LI> New throttling syslogs.
<LI> Tuning tweaks to throttling.
<LI> Tweak to the sample log-rotation script.
<LI> Allow trailing whitespace on the HTTP request line - it violates
the HTTP/1.1 spec, but it's harmless, and at least one client (TiVo's
v1.3 http_get [not related to my own http_get]) generates it.
<LI> Changed the capitalization on some HTTP headers we generate, to
interoperate with a client (yes, the same one) that is too stoopid to
do case-insensitive matching.
<LI> Pass Accept-Language headers to CGIs.
<LI> Make log entries at the end of a connection instead of the beginning,
so that the byte count is correct.
<LI> Off-by-one error in base-64 decoding - from Archie Cobbs.
<LI> Updated man page throttling section for the wildcard change in 2.17.
<LI> Couple of fixes for top-level redirection, from KIKUCHI Takahiro.
<LI> New option to hide thttpd's version - from Paul Fox.
</UL>
-->
New in version 2.20b:
<UL>
<LI> Corrected version of Marcel Telka's ssi fix. My bad.
</UL>
New in version 2.20:
<UL>
<LI> Performance improvements to the timer package via hashing, and
double-linking / sorting the lists.
Partially based on a suggestion by Michal Ostrowski.
<LI> Performance improvement to the mmap cache package, from Evan Jones.
<LI> Minor Linux fix for open files limit, from Jordan Ritter.
<LI> Fix for null ClientData, which picky compilers didn't like.
<LI> Unknown sockaddr type becomes a non-fatal error, preventing a DOS attack.
<LI> Close extraneous file descriptors on CGI calls - from Russell Dill.
<LI> Security fixes for the external ssi program, from ghandi@dopesquad.net
and Wolfgang Rupprecht.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -