Cherokee является очень быстрой, гибкой и простой программой в настройке Web сервера. Он поддерживает распространенных технологий в настоящее время: FastCGI, SCGI, PHP, CGI, TLS и SSL зашифрованные соединения, виртуальных хостов, аутентификацию, кодирование на лету, балансировку нагрузки, Apache совместимые файлы журналов, и многое другое. В этом материале показано, как можно установить Cherokee на Ubuntu server 10.10 с поддержкой PHP5 (через FastCGI) и поддержкой MySQL.
Предварительные замечания
В данной статье я использую имя хоста server1.example.com с IP-адреса 192.168.1.101. Эти параметры могут отличаться у Вас, поэтому Вам придется заменить их в случае необходимости.
В этом материале я выполняю Все шаги с привилегиями администратора, поэтому убедитесь, что Вы вошли в систему с правами администратора. для тех кто забыл:
|
Настройка сети
Поскольку установка Ubuntu настроила систему, на получение настроек сети через DHCP, то сейчас мы должны изменить, что бы сервер имел статический IP-адрес. Отредактируем /etc/network/interfaces и настроим его под свои нужды (в данном примере установки я буду использовать IP-адрес 192.168.1.101):
Настроим сеть (1 команда) |
|
# This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). # The loopback network interface auto lo iface lo inet loopback # The primary network interface auto eth0 iface eth0 inet static address 192.168.1.101 netmask 255.255.255.0 network 192.168.1.1 broadcast 192.168.0.255 gateway 192.168.1.1
Перезапустим сеть и отредактируем hosts (2 команды) |
|
127.0.0.1 localhost.localdomain localhost 192.168.1.101 server1.example.com server1 # The following lines are desirable for IPv6 capable hosts ::1 localhost ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters
Запустим новые:
Установим ссылку и перезапустим hosts (2 команды) |
|
Проверим наши настройки:
Проверим hosts (2 команды) |
|
Обе команды должны сослаться на server1.example.com
Установка MySQL 5
Сначала установите MySQL 5 следующим образом:
|
Вам будет предложено ввести пароль для пользователя MySQL root - это пароль действителен для пользователей root@localhost , а также Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра. , поэтому мы не должны позже указать пароль администратора MySQL вручную:
New password for the MySQL "root" user: - Ваш root пароль SQL Repeat password for the MySQL "root" user: - Ваш root пароль SQL
Как правило установка происходит в консольном виде, но с небольшим интерфейсом переведенным на язык который вы выбирали при установке.
Установка Cherokee
Cherokee доступен как пакет Ubuntu, поэтому мы можем установить его так:
|
Теперь перейдем в Вашем браузер по адресу http://192.168.1.101 , и вы должны увидеть приветствующую страницу Cherokee:
Cherokee может быть настроена через веб-панель управления, которую мы запустим следующим образом:
|
(По умолчанию Cherokee-admin подключается только с 127.0.0.1 ( локальный ), который означает, что можно подключиться к нему только с той же системы. С параметром -b можно указать сетевой адрес. Если не указать IP , он будет подключать все интерфейсы)
Вывод должен быть похож на этот:
root@server1:~# cherokee-admin -b Login: User: admin One-time Password: EzkGt8PykkdGce0b Web Interface: URL: http://localhost:9090/ [28/10/2010 16:26:19.157] (error) rrd_tools.c:120 - Could not find the rrdtool binary. Cherokee Web Server 1.0.4 (Jun 24 2010): Listening on port ALL:9090, TLS disabled, IPv6 enabled, using epoll, 4096 fds system limit, max. 2041 connections, caching I/O, single thread
Вам необходимо это имя пользователя и пароль для входа ввести в web интерфейс, который расположен на http://192.168.1.101:9090/ :
Вот как выглядит web интерфейс Cherokee:
Чтобы остановить Cherokee-admin, в консоли нажмем CTRL + C.
Установка PHP5
Мы можем произвести запуск PHP5 Cherokee через FastCGI. К счастью, Ubuntu предоставляет FastCGI с поддержкой PHP5 пакет, который мы устанавливаем так:
|
Настройка PHP5
Мы должны править /etc/php5/cgi/php.ini и раскомментировать строку cgi.fix_pathinfo = 1 :
|
[...]
; cgi.fix_pathinfo provides *real* PATH_INFO/PATH_TRANSLATED support for CGI. PHP's
; previous behaviour was to set PATH_TRANSLATED to SCRIPT_FILENAME, and to not grok
; what PATH_INFO is. For more information on PATH_INFO, see the cgi specs. Setting
; this to 1 will cause PHP CGI to fix its paths to conform to the spec. A setting
; of zero causes PHP to behave as before. Default is 1. You should fix your scripts
; to use SCRIPT_FILENAME rather than PATH_TRANSLATED.
; http://php.net/cgi.fix-pathinfo
cgi.fix_pathinfo=1
[...]
Теперь мы перезапустим Cherokee:
|
Включение PHP5 В Cherokee
PHP не включена в Cherokee по умолчанию. Чтобы включить ее, мы должны запустить web панели управления Cherokee ...
|
... и войти в него ( http://192.168.1.101:9090/ ).
Теперь перейдите к vServers , выбрать по умолчанию виртуальный хост и перейти к вкладке Behavior, нажмите Rule Management кнопку:
В левой колонке, Вы должны увидеть все существующие в настоящее время правила:
Нажмите "плюс" рядом с Behaviourчто бы добавить новое правило:
В продолжении появляется всплывающее окно, выберите Languages из левого столбца, а затем выберите PHP и нажмите кнопку Добавить:
Затем нажмите кнопку Create в окне Configuration Assistant:
Теперь вы должны увидеть новое правило для PHP в левой колонке (со статусом NON FINAL). Вы можете изменить настройки PHP по умолчанию, если Вам это надо:
Для завершения настройки, нажмите на окно, которое NON FINAL...
В правом верхнем углу должна появиться кнопка SAVE - нажмите на ее, чтобы сохранить новую конфигурацию ...
На вопрос Would you like to apply the changes to the running server now?, что в переводе Хотели бы Вы, применить изменения к работающем серверу? выберите одну из кнопок (Do not restart/Graceful restart/Hard restart), в моем случае это Graceful restart без полной перезагрузки сервера, а только программной части.
PHP теперь должно быть перечислено на вкладке Behavior:
Так как я не выбрал Hard restart, я выполняю перезапуск сервера вручную, перейдя на главную страницу и нажав кнопку Stop Server ...
... , а затем кнопку Start Server, чтобы перезапустить Cherokee:
Чтобы остановить Cherokee-admin, в консоли нажмем CTRL + C.
Тестирование PHP5. Получение информации о Вашей установленной PHP5
Документ root веб-сайта по умолчанию /var/www. Теперь мы создадим небольшой файл PHP (info.php) в этот каталог и откроем его в браузере. Появится много полезной информации о нашей установленной PHP, таких как версия PHP.
|
Теперь мы вызовим этот файл в браузере (например, http://192.168.1.101/info.php):
Как видите, PHP5 работает, и он работает через FastCGI обработчик, как показано в строке Server API. Если Вы прокрутите дальше, Вы увидите все модули, которые уже включены в PHP5. MySQL не перечисленные в нем, что означает что у нас пока нет поддержки MySQL в PHP5.
Запуск поддержкой MySQL в PHP5
Чтобы получить поддержку MySQL в PHP, мы установим пакет php5-MySQL. Для поиска доступных PHP5 модулей которые нам могут понадобятся для работы Web приложений найдем следующим образом:
|
Выберите из них нужное Вам, и установить их так:
|
Теперь перезапустите Cherokee:
|
Теперь обновите страницу http://192.168.1.101/info.php в вашем браузере и прокрутите снова вниз до раздела модулей. В этот раз Вы должны найти много новых модулях, в том числе модуль MySQL: