darkhttpd/README
Egor Ivanov ab7af194e6 Implement --forward.
A web forward feature that performs 301 redirects for some requests
(in addition normal web content serving)

The "Host:" request header (HTTP/1.1 only) is compared with a list of
hosts, defined by the "--forward host url" option. If a match is found,
the request is redirected to url+path. Otherwise, it is served as a
request to the local file system.
2013-04-28 22:58:40 +10:00

58 lines
1.5 KiB
Plaintext

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
Web forward (301) requests for some hosts:
$ ./darkhttpd /var/www/htdocs --forward example.com http://www.example.com \
--forward secure.example.com https://www.example.com/secure
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