Page 1 of 1

Apache appears to finally have some competition

Posted: Thu May 14, 2009 8:06 pm
by iblis
... In the form of the Cherokee web server. I've tinkered with it a bit, and while it doesn't have the million or two modules that Apache does, it's way more user-friendly. Instead of tinkering with a config file (though you have that option, as well), it has a python-based, web-accessible frontend that you can use to add virtual hosts, ~user style directories, and data sources.

The footprint is pretty amazing, too, in both file size:

Code: Select all

discord ~ # du $(which apache2)
336	/usr/sbin/apache2
discord ~ # du $(which cherokee)
12	/usr/sbin/cherokee
and libraries loaded:

Code: Select all

discord ~ # ldd $(which apache2)
	linux-gate.so.1 =>  (0xb7fb1000)
	libm.so.6 => /lib/libm.so.6 (0xb7f78000)
	libpcre.so.0 => /lib/libpcre.so.0 (0xb7f48000)
	libaprutil-1.so.0 => /usr/lib/libaprutil-1.so.0 (0xb7f28000)
	libgdbm.so.3 => /usr/lib/libgdbm.so.3 (0xb7f21000)
	libdb-4.7.so => /usr/lib/libdb-4.7.so (0xb7dcf000)
	libexpat.so.1 => /usr/lib/libexpat.so.1 (0xb7dad000)
	libapr-1.so.0 => /usr/lib/libapr-1.so.0 (0xb7d84000)
	libuuid.so.1 => /lib/libuuid.so.1 (0xb7d7f000)
	librt.so.1 => /lib/librt.so.1 (0xb7d76000)
	libcrypt.so.1 => /lib/libcrypt.so.1 (0xb7d44000)
	libpthread.so.0 => /lib/libpthread.so.0 (0xb7d2c000)
	libdl.so.2 => /lib/libdl.so.2 (0xb7d28000)
	libc.so.6 => /lib/libc.so.6 (0xb7bea000)
	/lib/ld-linux.so.2 (0xb7fb2000)

discord ~ # ldd $(which cherokee)
	linux-gate.so.1 =>  (0xb7f28000)
	libcrypto.so.0.9.8 => /usr/lib/libcrypto.so.0.9.8 (0xb7dca000)
	libdl.so.2 => /lib/libdl.so.2 (0xb7dc6000)
	libc.so.6 => /lib/libc.so.6 (0xb7c89000)
	/lib/ld-linux.so.2 (0xb7f29000)

Oh, and did I mention that it's fast?

Best of all, it supports Django seamlessly via fastcgi/scgi, which (IMHO) is easier to lock down security-wise in a multi-hosting environment than something like mod_python. Similar support exists for the grungy languages, such as PHP and Perl. :D

If you haven't tried it, Ubuntu's Jaunty Jackalope (or even Hardy Heron, if you're horribly out of date) has it in the apt repositories, and it looks like Gentoo has a pretty recent version in portage (do USE=admin emerge cherokee to get the web-based goodness).