Cherokee to przenośny serwer HTTP napisany w C i rozpowszechniany na licencji GPL-2. Posiada liczne funkcjonalności jak obsługa CGI, PHP poprzez PHPCGI jak i FastCGI, wsparcie dla uwierzytelniania (plain, htpasswd, htdigest, PAM) i obsługi logów (NCSA, W3C, Combined). Można go również łatwo rozszerzyć o dodatkowe opcje poprzez wtyczki.
- Autor: Alvaro Lopez Ortega
- Obsługiwane systemy operacyjne: GNU/Linux, Windows, Solaris, Mac OS X. BSD
- Obsługa dynamicznych aplikacji www: FastCGI, SCGI, CGI - Ruby on Rails, Django, Pylons, PHP itp.
- Dokumentacja: Oficjalna Dokumentacja
Handlery FastCGI, SCGI i PHPCGI - Opis handlerów w Cherokee
Pylons pod Cherokee
Django pod Cherokee
Django + Cherokee + Nginx reverse proxy
Benchmark SCGI dla Cherokee i Lighttpd
Benchmark Pylons pod różnymi serwerami
Cherokee dostępny jest w repozytoriach wielu dystrybucji. Można również
pobrać paczkę binarną lub źródła i instalować/skompilować samemu. Cherokee wymaga kompilatora C, make i jakiejś powłoki sh. Opcjonalnie potrzebny będzie python (testy jednostkowe napisane w pythonie), openSSL lub GNUTLS w przypadku kompilacji z obsługą https.
Kompilacja przebiega standardowo:
./configure --prefix=/usr --sysconfdir=/etc --with-wwwroot=/var/www
make
make install
Można również przekazać parametry do ./configure. By wyłączyć obsługę
TLS / SSL wystarczy:
--disable-tls
By wymusić użycie określonej biblioteki:
--enable-tls=gnutls
--enable-tls=openssl
Cherokee obsługuje również IPv6 i jeżeli nie potrzebujemy tej funkcjonalności możemy ją wyłączyć:
--disable-ipv6
Jeżeli zainstalowałeś Cherokee na Linuksie czy BSD to w katalogu
/etc powinien pojawić się katalog
cherokee zawierający pliki konfiguracyjne, a w
/etc/SKRYPTY ROZRUCHOWE/ plik zarządzający serwerem (/etc/init.d/ dla Gentoo czy /etc/rc.d/ dla Archa). Oto graficzne przedstawienie struktury
/etc/cherokee:
- cherokee.conf jest głównym plikiem konfiguracyjnym odpowiedzialnym za ustawienia serwera. Załącza inne pliki i katalogi.
- mime.conf przechowuje ustawienia typów MIME
- icons.conf określa ikony - pojawiające się przy listowaniu katalogów
- advanced.conf zawiera zaawansowane ustawienia, nie ruszaj, chyba że wiesz co robisz
- /etc/cherokee/sites-available: katalog z konfiguracją poszczególnych wirtualnych serwerów. Zaleca się przetrzymywanie konfiguracji jednego serwera w pliku.
- /etc/cherokee/sites-enabled: by aktywować dany wirtualny serwer stwórz link symboliczny w tym katalogu.
- /etc/cherokee/mods-available: tak samo jak sites-available tyle że dotyczy modułów
- /etc/cherokee/mods-enabled: linki symboliczne do aktywnych modułów
- Chcesz dodać wirtualny serwer o nazwie przyklad.pl
- Stwórz /etc/cherokee/sites-available/przyklad.pl
- Edytuj plik i podaj konfigurację serwera, np:
Server przyklad.pl, www.przyklad.pl {
DocumentRoot /var/www/przyklad
Directory / {
Handler file
}
Extension php, php4 {
Handler phpcgi
}
}
- Stwórz odnośnik symboliczny by aktywować:
cd /etc/cherokee/sites-enabled
ln -s /etc/cherokee/sites-available/przyklad.pl .
- Dodane: 14.07.2008 przez riklaunim