Установка Cherokee с PHP5 и MySQL поддержка в Fedora 14

Звезда не активнаЗвезда не активнаЗвезда не активнаЗвезда не активнаЗвезда не активна
 

FedoraCherokee является очень быстрой, гибкой и простой программой в настройке Web сервера. Он поддерживает распространенных технологий в настоящее время: FastCGI, SCGI, PHP, CGI, TLS и SSL зашифрованные соединения, виртуальных хостов, аутентификацию, кодирование на лету, балансировку нагрузки, Apache совместимые файлы журналов, и многое другое. В этом материале показано, как можно установить Cherokee на Fedora 14 с поддержкой PHP5 (через FastCGI) и поддержкой MySQL.

Предварительные замечания

В данной статье я использую имя хоста server1.example.com с IP-адреса 192.168.1.101. Эти параметры могут отличаться у Вас, поэтому Вам придется заменить их в случае необходимости.

Установка MySQL 5

Сначала установите MySQL 5 следующим образом:

  • yum install mysql mysql-server

Затем мы создаем автозапуск для MySQL (так что бы MySQL запускалась автоматически при загрузке системы) и запустим MySQL сервер:

  • chkconfig --levels 235 mysqld on
  • /etc/init.d/mysqld start
  • mysql_secure_installation

Установите пароль для пользователя root (в противном случае любой желающий cможет получить доступ к MySQL базе данных):

[root@server1 ~]# mysql_secure_installation

NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MySQL
      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!


In order to log into MySQL to secure it, we'll need the current
password for the root user.  If you've just installed MySQL, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.

Enter current password for root (enter for none): - ENTER
OK, successfully used password, moving on...

Setting the root password ensures that nobody can log into the MySQL
root user without the proper authorisation.

Set root password? [Y/n] - ENTER
New password: - yourrootsqlpassword
Re-enter new password: - yourrootsqlpassword
Password updated successfully!
Reloading privilege tables..
 ... Success!


By default, a MySQL installation has an anonymous user, allowing anyone
to log into MySQL without having to have a user account created for
them.  This is intended only for testing, and to make the installation
go a bit smoother.  You should remove them before moving into a
production environment.

Remove anonymous users? [Y/n] - ENTER
 ... Success!

Normally, root should only be allowed to connect from 'localhost'.  This
ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n] - ENTER
 ... Success!

By default, MySQL comes with a database named 'test' that anyone can
access.  This is also intended only for testing, and should be removed
before moving into a production environment.

Remove test database and access to it? [Y/n] - ENTER
 - Dropping test database...
 ... Success!
 - Removing privileges on test database...
 ... Success!

Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.

Reload privilege tables now? [Y/n] - ENTER
 ... Success!

Cleaning up...



All done!  If you've completed all of the above steps, your MySQL
installation should now be secure.

Thanks for using MySQL!


[root@server1 ~]#

Как правило установка происходит в консольном виде, но с небольшим интерфейсом переведенным на язык который вы выбирали при установке.

Установка Cherokee

Cherokee доступен как пакет Fedora 14, поэтому мы можем установить его так:

  • yum install cherokee

Далее мы создадим автозапуск для Cherokee и запустить его:

  • chkconfig --levels 235 cherokee on
  • /etc/init.d/cherokee start

Теперь перейдем в Вашем браузер по адресу http://192.168.1.101 , и вы должны увидеть приветствующую страницу Cherokee:

Страница приветствия Cherokee

Cherokee может быть настроена через веб-панель управления, которую мы запустим следующим образом:

  • cherokee-admin -b

(По умолчанию Cherokee-admin подключается только с 127.0.0.1 ( локальный ), который означает, что можно подключиться к нему только с той же системы. С параметром -b можно указать сетевой адрес. Если не указать IP , он будет подключать все интерфейсы)

Вывод должен быть похож на этот:

[root@server1 ~]# cherokee-admin -b

Login:
  User:              admin
  One-time Password: gunCkIxdT8nQ6JqW

Web Interface:
  URL:               http://localhost:9090/

[10/11/2010 14:50:26.964] (error) rrd_tools.c:120 - Could not find the rrdtool binary.
Cherokee Web Server 1.0.4 (Jun 28 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/ :

Авторизация Cherokee

Вот как выглядит web интерфейс Cherokee:

Интерфейс Cherokee

Чтобы остановить Cherokee-admin, в консоли нажмем CTRL + C.


Установка PHP5

Мы можем произвести запуск PHP5 Cherokee через FastCGI. К счастью, Fedora 14 предоставляет FastCGI с поддержкой PHP5 пакет, который мы устанавливаем так:

  • yum install php-cli

Настройка PHP5

Мы должны править /etc/php5/cgi/php.ini и раскомментировать строку cgi.fix_pathinfo = 1 :

  • nano /etc/php5/cgi/php.ini
[...]
; 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:

  • /etc/init.d/cherokee restart

Включение PHP5 В Cherokee

PHP не включена в Cherokee по умолчанию. Чтобы включить ее, мы должны запустить web панели управления Cherokee ...

  • cherokee-admin -b

... и войти в него ( http://192.168.1.101:9090/ ).

Теперь перейдите к vServers , выбрать по умолчанию виртуальный хост и перейти к вкладке Behavior, нажмите Rule Management кнопку:

Настройка Cherokee

В левой колонке, Вы должны увидеть все существующие в настоящее время правила:

Настройка Cherokee

Нажмите "плюс" рядом с Behaviourчто бы добавить новое правило:

В продолжении появляется всплывающее окно, выберите Languages из левого столбца, а затем выберите PHP и нажмите кнопку Добавить:

Настройка Cherokee

Затем нажмите кнопку Create в окне Configuration Assistant:

Настройка Cherokee

Теперь вы должны увидеть новое правило для PHP в левой колонке (со статусом NON FINAL). Вы можете изменить настройки PHP по умолчанию, если Вам это надо:

Установка Cherokee

Для завершения настройки, нажмите на окно, которое NON FINAL...

Установка Cherokee

В правом верхнем углу должна появиться кнопка SAVE - нажмите на ее, чтобы сохранить новую конфигурацию ...

Сохранение параметров Cherokee

На вопрос Would you like to apply the changes to the running server now?, что в переводе Хотели бы Вы, применить изменения к работающем серверу? выберите одну из кнопок (Do not restart/Graceful restart/Hard restart), в моем случае это Graceful restart без полной перезагрузки сервера, а только программной части.

PHP теперь должно быть перечислено на вкладке Behavior:

Статус запущенных компонентов сервера на Cherokee

Так как я не выбрал Hard restart, я выполняю перезапуск сервера вручную, перейдя на главную страницу и нажав кнопку Stop Server ...

Главная страница сервера Cherokee

... , а затем кнопку Start Server, чтобы перезапустить Cherokee:

Запуск Cherokee

Чтобы остановить Cherokee-admin, в консоли нажмем CTRL + C.

Тестирование PHP5. Получение информации о Вашей установленной PHP5

Документ root веб-сайта по умолчанию /var/www. Теперь мы создадим небольшой файл PHP (info.php) в этот каталог и откроем его в браузере. Появится много полезной информации о нашей установленной PHP, таких как версия PHP.

  • nano /var/www/cherokee/info.php

Теперь мы вызовим этот файл в браузере (например, http://192.168.1.101/info.php):

Проверка PHP5 в Fedora 14

Как видите, PHP5 работает, и он работает через FastCGI обработчик, как показано в строке Server API. Если Вы прокрутите дальше, Вы увидите все модули, которые уже включены в PHP5. MySQL не перечисленные в нем, что означает что у нас пока нет поддержки MySQL в PHP5.

Запуск поддержкой MySQL в PHP5

Чтобы получить поддержку MySQL в PHP, мы установим пакет php5-MySQL. Для поиска доступных PHP5 модулей которые нам могут понадобятся для работы Web приложений найдем следующим образом:

  • yum search php

Выберите из них нужное Вам, и установить их так:

  • yum install php-mysql php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc

Теперь перезапустите Cherokee:

  • /etc/init.d/cherokee restart

Теперь обновите страницу http://192.168.1.101/info.php в вашем браузере и прокрутите снова вниз до раздела модулей. В этот раз Вы должны найти много новых модулях, в том числе модуль MySQL:

Установка LAMP Ubuntu