Cherokee -очень быстрый веб вервер. Отличается большой гибкостью и легкостью в настройке. Поддерживает большое число современных технологий: FastCGI, SCGI, PHP, CGI, TLS и SSL шифрованные соединения, виртуальные хосты, аутентификация, кодирование на лету, балансировщик нагрузки (Load balancing), Apache-совместимые лог файлы балансировку баз данных, обратный https прокси, шейпер трафика, видеопотоки и многое другое..
Cherokee имеет в комплекте довольно удобный GUI - интерфейс для настройки веб сервера. Согласно проведенным тестам, производительность сервера на статическом контенте превышает показатели таких серверов, как
lighttpsd и nginx.
Условиями проведения тестов были следующие:
Полмиллиона запросов, 1,7 Кb статический файл, 20 конкурирующих клиетов, Локальная сеть 1Gbit/s.
Установка MySQLДля работы с Mysql необходимо установить следующие пакеты:
apt-get install mysql-server-5.0 mysql-client
Установка PHPЧтобы иметь возможность писать скрипты php, необходимо установить следующие пакеты:
apt-get install php5 php5-cgi
Чтобы иметь возможность выполнять mysql запросы из php-скриптов, необходимо установить следующий пакет:
apt-get install php5-mysql
Установка текущей версии CherokeeЧтобы поставить текущую версию сервера, еобходимо установить следующий пакет:
apt-get install cherokee
Установка последней версии Cherokee в UbuntuСначала необходимо добавить новый apt-репозитарий:
sudo su
echo "deb https://ppa.launchpad.net/cherokee-webserver/ppa/ubuntu jaunty main" >> /etc/apt/sources.list
echo "deb-src https://ppa.launchpad.net/cherokee-webserver/ppa/ubuntu jaunty main" >> /etc/apt/sources.list
Далее, необходимо добавить в систему соответствующие PGP-ключи:
sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 0×0ad0b667b67daa477f5ff89f51bb8e83eba7bd49
После чего, установить пакет сервера:
apt-get update
apt-get install cherokee
Запуск web сервера CherokeeПроверяем, запущен ли сервер:
ps aux | grep cherokee
root 6204 0.0 0.1 1756 444 ? S 13:23 0:00 /usr/sbin/cherokee-guardian
www-data 6205 0.0 0.5 35556 1472 ? Sl 13:23 0:01 /usr/sbin/cherokee
Если же ничего не найдено, значит сервер не запущен. Чтоб его стартовать, необходимо выполнить:
sudo /etc/init.d/cherokee start
Проверка работы web-сервера CherokeeЧтобы убедиться, что сервер корректно установлен, необходимо создать классическую php страницу, выводящую информацию о системе.
sudo su
echo "<?php echo phpinfo(); ?>" > /var/www/info.php
Далее, необходимо обратиться к этой страничке по https. Например, если адрес сервера - 10.1.0.4, то полный адрес страницы будет: https://10.1.0.4/info.php
Настройка web-интерфейса для администрирования CherokeeОдной из отличительных особенностей сервера Cherokee является идущий в комплекте web-интерфейс для его администрирования. Естественно, классический текстовый файл конфигуарции так же присутствует и располагается в /etc/cherokee/cherokee.conf.
Чтобы сделать доступным web-интерфейс администрирования, необходимо выполнить:
sudo cherokee-admin
После чего, для администрирования можно обращаться по адресу https://IP_adres servera:9090. То есть, доступ будет только с локальной машины. Чтобы разрешить управлять сервером с любого адреса, необходимо выполнить:
sudo cherokee-admin -b
После установки можно сразу запустить административный интерфейс (который надо сказать — весьма интуитивно понятен).
# cherokee-admin
Login:
User: admin
One-time Password: vopyERqT6gWpYwPY
Cherokee Web Server 0.11.6 (Jan 2 2009): Listening on port 9090, TLS disabled,
IPv6 disabled, using epoll, 1024 fds system limit, max. 505 connections,
single thread
Вам будет выдан пароль для доступа в административный интерфейс. (Вход в него: https://127.0.0.1:9090)
В административном интерфейсе меня в первую очередь заинтересовала возможность автоматического создания виртуальных хостов, а также удобный средства для организации редайректов.
Помимо cherokee-admin с сервером идут еще несколько утилит:
cherokee-config — средство конфигурирования из командной строки
сherokee-tweak — также средсво администрирования (Может cделать коннект к работающему Cherokee и выполнить несколько различных действий (см. документацию))
сherokee-worker — основная программа web-сервера. Отвечает за запуск с данной конфигурацией и проч.
Кратко перечислим основный фичи:
Поддержка TLS/SSL
FastCGIidge
SCGI bridge
CGI execution
PHP execution (through FastCGI)
Reverse https 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
https load balancing
Data base bridging and balancing
TLS Server Side Indication
Server Side Includes
Gzip and Deflate on-the-fly encoding
FFMpeg streaming