Skip to content

a minimalist deployment-ready HTTP server for serving static content

Notifications You must be signed in to change notification settings

bazaar-projects/darkhttpd

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 

Repository files navigation

How to build darkhttpd
----------------------

Simply run make:
	$ make



How to run darkhttpd
--------------------

Serve /var/www/htdocs on the default port (port 80):
	$ ./darkhttpd /var/www/htdocs

Serve ~/public_html on port 8081:
	$ ./darkhttpd ~/public_html --port 8081

Only bind to one IP address (useful on multi-homed systems):
	$ ./darkhttpd ~/public_html --addr 192.168.0.1

Serve at most 4 simultaneous connections:
	$ ./darkhttpd ~/public_html --maxconn 4

Log accesses to a file:
	$ ./darkhttpd ~/public_html --log access.log

Chroot for extra security (you need root privs for chroot):
	$ ./darkhttpd /var/www/htdocs --chroot

Use default.htm instead of index.html:
	$ ./darkhttpd /var/www/htdocs --index default.htm

Add mimetypes - in this case, serve .dat files as text/plain:
	$ cat extramime
	text/plain	dat
	$ ./darkhttpd /var/www/htdocs --mimetypes extramime

Drop privileges:
	$ ./darkhttpd /var/www/htdocs --uid www --gid www

Use acceptfilter (FreeBSD only):
	$ kldload accf_http
	$ ./darkhttpd /var/www/htdocs --accf

Run in the background and create a pidfile:
	$ ./darkhttpd /var/www/htdocs --pidfile /var/run/httpd.pid --daemon

Commandline options can be combined:
	$ ./darkhttpd ~/public_html --port 8080 --addr 127.0.0.1

To see a full list of commandline options,
run darkhttpd without any arguments:
	$ ./darkhttpd

About

a minimalist deployment-ready HTTP server for serving static content

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 100.0%