Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
micro_httpd(8)		     System Manager's Manual		  micro_httpd(8)

NAME
     micro_httpd - really small HTTP server

SYNOPSIS
     micro_httpd directory

DESCRIPTION
     micro_httpd  is  a very small HTTP server.  It runs from inetd, which means
     its performance is poor.  But for low-traffic sites, it's	quite  adequate.
     It implements all the basic features of an HTTP server, including:

     *	Security against ".." filename snooping.

     *	The common MIME types.

     *	Trailing-slash redirection.

     *	index.html

     *	Directory listings.

     All in 150 lines of code.

     To install it, add a line like this to /etc/inetd.conf:
	 micro_http  stream tcp nowait nobody  /usr/local/sbin/micro_httpd micro_httpd dir
     Make sure the path to the executable is correct, and change "dir" to be the
     directory you want to serve.  Then add a line like this to /etc/services:
	 micro_http   port/tcp	 #Micro HTTP server
     Change  "port"  to  the  port  number you want to use - 80, 8000, whatever.
     Then restart inetd by sending it a "HUP" signal, or rebooting.

     On some systems, inetd has a maximum spawn rate - if you try to  run  inetd
     services  faster  than  a	certain  number  of times per minute, it assumed
     there's either a bug of an attack going on and it shuts down for a few min-
     utes.  If you run into this problem - look for syslog messages  about  too-
     rapid  looping - you'll need to find out how to increase the limit.  Unfor-
     tunately this varies from OS to OS.  On FreeBSD, you add a "-R 10000"  flag
     to  inetd's  initial  command line.  On some Linux systems, you can set the
     limit on a  per-service  basis  in  inetd.conf,  by  changing  "nowait"  to
     "nowait.10000".

     Note  that  you can use micro_httpd to serve HTTPS, if you like, by running
     it from stunnel.  First fetch and install stunnel - FreeBSD users can  just
     go  to  /usr/ports/security/stunnel  and  do  a "make cert ; make install".
     Then as root run:
	 stunnel -p /usr/local/certs/stunnel.pem -d 443    -l /usr/local/sbin/micro_httpd --  micro_httpd dir
     Make sure the paths to the certificate  and  executable  are  correct,  and
     again don't forget to change "dir" to the directory you want to serve.

AUTHOR
     Copyright	(C)  1999  by  Jef Poskanzer <jef@mail.acme.com>. All rights re-
     served.

				  15 March 1999 		  micro_httpd(8)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=micro_httpd&sektion=8&manpath=FreeBSD+Ports+15.1.quarterly>

home | help