| Original author(s) | Álvaro López Ortega |
|---|---|
| Developer(s) | Cherokee Project |
| Stable release | 0.99.37 / 2009-12-16 |
| Written in | C |
| Operating system | Cross-platform |
| Type | 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 |
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 15 years old. Currently, Cherokee is developed and maintained by an open community of developers.[1]
Available versions
Cherokee's latest stable release is 0.99.37, 16th of Dec 2009, working toward the first 1.0 release to reflect "huge stability, performance and feature leaps". The most up-to-date version is always available through the SVN repository of the Cherokee project.
The project is very actively developed and has a tight release cycle. After the 0.5.x series the web server experienced some major refactoring, and the configuration file format changed drastically.
Since then many things have been added:
- 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 and reverse proxy to distribute load between multiple servers.
- New authentication mechanisms.
- New documentation system and improved documentation.
- cherokee-guardian, currently renamed to the main binary cherokee, a recovery mechanism integrated to ensure the server, cherokee-worker is always up and running.
- New themes and icon sets.
- New caching infrastructure: I/O cache is now much more efficient.
- Traffic shaping
- Streaming media, automatic traffic shaping based on average bitrate provided by FFmpeg
- Various configuration wizards for many languages and Softwares including:
- Platforms: Adobe's Coldfusion, GlassFish, Symfony_framework, Ruby on Rails, uWSGI, Liferay, Zend Framework, Django, and Alfresco.
- CMS: Drupal, Joomla, Wordpress, MoinMoin, Concrete5, and Trac.
- Tasks: Hotlinking, Streaming, CommonStatic files and server Icons
- Languages: PHP and Mono Framework
- Database: phpMyAdmin
- Misc.: Moodle, Mailman, Phpbb, rTorrent, and Sugar CRM
Features
Cherokee supports the most widespread technologies nowadays:
- TLS/SSL support
- FastCGI bridge
- uWSGI bridge (version 0.9.3)
- SCGI bridge
- CGI execution
- PHP execution (through FastCGI and PHP-FPM support)
- Reverse HTTP proxy
- Authentication mechanisms: htpasswd, htdigest, PAM, LDAP, MySQL, plain text, and fixed authentication lists.
- Logging formats: Apache compatible, W3C and NCSA
- Regular expression based redirections
- HTTP load balancing
- Data base bridging and balancing
- TLS Server Side Indication
- Server Side Includes
- Gzip and Deflate on-the-fly encoding
- FFMpeg streaming
Cherokee can also handle redirections and virtual server configuration.
Configuration
Cherokee is configured by an administration interface called cherokee-admin and various wizards (see above).
All the configuration options are available on this interface, so there is no need for users to learn the grammar of any configuration format in order to edit the file by hand. Besides, the interface takes care of checking all the inputs, so even if the user eventually makes a mistake while configuring the server, it can warn him about it before committing the new configuration file.
Sub-projects
There are sub-projects simultaneously developed within the Cherokee project.
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.
cget
cget is a web downloader for Cherokee.
References
See also
External links
This entry is from Wikipedia, the leading user-contributed encyclopedia. It may not have been reviewed by professional editors (see full disclaimer)




