Cherokee HTTP Server

From Wikipedia, the free encyclopedia

Cherokee Web Server
Design by Alvaro Lopez Ortega
Developed by Cherokee Project
Latest release 0.7
OS Cross-platform
Genre Web server
License GNU General Public License
Website http://cherokee-project.com/

Cherokee HTTP Server is a cross-platform Web server. It aims to be fast and fully-functional while remaining lightweight compared to alternative servers. It is written entirely in C. It is embeddable and extensible with plugins.

Released under the GNU General Public License, Cherokee is free software.

Contents

[edit] Brief history

Cherokee was started in 2001 by Alvaro López Ortega. The motivation was to build a new web server; something newer than NCSA HTTPd and not as big and heavy as Apache HTTP Server, both of which are now more than 10 years old. Currently, Cherokee is developed and maintained by an open community of developers.

[edit] Available versions

Cherokee's latest stable release 0.6.1 was released on the 24th of March 2008. The most up-to-date version is always available through the SVN repository of the Cherokee project.

Improvements since the previous stable series (0.5.x) include:

  • Administration Interface: a new program called cherokee-admin was included to provide a user friendly web interface for server configuration.
  • Speed boost (20% to 25% faster).
  • Load balancing to distribute load between multiple servers.
  • New authentication mechanisms.
  • New documentation system and improved user documentation.
  • cherokee-guardian, a recovery mechanism integrated to ensure the server is always up and running.
  • New themes and icon sets.

[edit] Features

Cherokee's features include CGI execution, PHP execution with PHPCGI and FastCGI. It also supports logging and authentication.

Logging methods supported:

  • NCSA
  • W3C
  • Combined

Authentication methods supported:

  • plain
  • htpasswd
  • htdigest
  • PAM
  • MySQL
  • LDAP

Cherokee can also handle redirections and virtual server configuration.

[edit] Configuration

Early versions of Cherokee relied on several configuration files:

  • advanced.conf
  • cherokee.conf
  • icons.conf
  • mime.conf

As of release 0.6.0, the only configuration file is cherokee.conf, and it is managed directly by cherokee-admin. The format of this configuration file is well documented, so manual editing remains possible.


[edit] Experimental features

[edit] Sub-projects

There are sub-projects simultaneously developed within the Cherokee project.

[edit] u-Cherokee

u-Cherokee is Cherokee's micro edition version. It is designed to fit in really small devices with hard memory and power limitations. It's not available as a separate package but requires Cherokee to be compiled in a special way.

[edit] cget

cget is a web downloader for Cherokee.

[edit] External links

Languages