воскресенье, 23 января 2011 г.

Kohana 3: Установка под Ubuntu

Раскопав в закромах немного старого железа, было решено взгромоздить всё это дело Ubuntu и использовать под небольшой www сервер.

В Kohana 3: Первые шаги я обещал рассказать о процеесе установки фреймворка Kohana 3 под linux, чем далее и займусь.



Настройка Ubuntu

Начнём с самого начала, но заострять внимание на процессе установки Ubuntu Server не будем, т.к. он весьма тривиален. Ставим Ubuntu Server 10.10, из пакетов выбираем LAMP Server и OpenSSH сервер.

После установки и ребута логинимся и выполняем:

sudo apt-get update

затем

sudo apt-get upgrade

Если хотим попасть в свой домашний каталог по ftp, то устанавливаем ftp сервер, я установил vsftpd:

sudo apt-get install vsftpd

Не забываем в /etc/vsftpd.conf включить опции:

#Разрешает входить на ftp под локальными пользователями
local_enable=YES 
#Открывает доступ на запись
write_enable_YES
#Указываем свою umask для закачиваемых файлов
local_umask=012
#Ограничиваем доступ локальным пользователям их домашним каталогом
chroot_local_user=YES

Перезапускаем vsftpd.

sudo restart vsftpd

Устанавливаем любимый текстовый редактор, у меня это vim:

sudo apt-get install vim

Устанавливаем git, он нам ещё пригодится.

sudo apt-get install git

Создание вирутального хоста

Начнём с создания в домашнем каталоге подкаталога для виртаульных хостов vhost, в нём структуру каталогов для нашего виртуального хоста:

cd $HOME
mkdir vhosts vhosts/kohana vhosts/kohana/logs vhosts/kohana/webroot

Каталоги созданы:

vhosts
    kohana
        logs
        webroot

В $HOME/vhosts/kohana/webroot создадим index.php со следующим содержимым:

<?php phpinfo() ?>

В /ect/hosts дописываем ip адрес и имя хоста, например:

10.0.0.4     kohana.ubuntu

Теперь берёмся за apache2.

Так как, скорее всего у нас будет не один виртуальный хост, то заранее создадим шаблон:

sudo cp /etc/apache2/sites-available/default /etc/apache2/sites-available/template

Изменяем шаблон на нужный нам:

sudo vim /etc/apache2/sites-available/template

В итоге получается что-то вроде этого:

<VirtualHost *:80>
     ServerAdmin    webmaster@ubuntu
     ServerName     kohana.ubuntu

     DocumentRoot /home/alex/vhosts/kohana/webroot

     <Directory "/home/alex/vhosts/kohana/webroot">
          Options Indexes FollowSymLinks Includes
          AllowOverride All
          Order Allow,Deny
          Allow From All
     </Directory>

     ErrorLog     /home/alex/vhosts/kohana/logs/error.log
     CustomLog /home/alex/vhosts/kohana/logs/access.log combined
</VirtualHost>

Копируем созданный шаблон:

sudo cp /etc/apache2/sites-available/template /etc/apache2/sites-available/kohana.ubuntu

Активируем виртуальный хост командой a2ensite, которой в качестве параметра передаётся имя файла конфигурации:

sudo a2ensite kohana.ubuntu

Для отключения виртуального хоста используется команда a2dissite, в нашем случае использовать её не нужно.

sudo a2dissite kohana.ubuntu

Перезагружаем apache2:

sudo /etc/init.d/apache2 reload

Открываем браузер и вводим адрес http://kohana.ubuntu

Видим таблицу phpinfo()

Если посмотрим на секцию Configuration apache2handler Loaded Modules то скорее всего в списке не увидим mod_rewrite.

Apache2 mod-rewrite не подключен

Доступные модули находятся в каталоге: /etc/apache2/mods-available

Активные модули в каталоге: /etc/apache2/mods-enabled

Для подключения модуля rewrite используем команду a2enmod:

sudo a2enmod rewrite

Для отключения модулей используется команда a2dismod, например для отключения модуля rewrite используем следующие команды:

sudo a2dismod rewrite

Перезагружаем apache2:

sudo /etc/init.d/apache2 reload

Открываем браузер и вводим адрес http://kohana.ubuntu. Теперь в списке модулей присутствует mod_rewrite.

Apache2 mod_rewrite подключен

Можно приступать к установке и настройке фреймворка kohana 3.


Установка фреймворка Kohana 3 из репозитария GitHub

Переходим в каталог нашего виртуального хоста:

cd $HOME/vhosts/kohana

Есть несколько вариантов как установить фреймворк. Мы создадим копию репозитария в каталоге $HOME/vhosts/kohana, можно создать копию в другом месте, а в каталоге хоста создать ссылки на system, application и modules. Можно создать ссылки на modules и system, а application просто скопировать, тогда при создании новых виртуальных хостов можно использовать общее ядро и модули. В общем простор для фантазии большой.

Начнём установку:

git clone git://github.com/kohana/kohana.git
cd kohana/
git submodule init
git submodule update

Теперь у нас имеется свежая копия репозитария фреймворка Kohana 3.


Настройка фреймворка Kohana 3

Скопируем из каталога с копией репозитария нужные нам файлы в DocumentRoot

cp index.php ../webroot
cp install.php ../webroot
cp example.htacces ../webroot/.htaccess

Изменим пути к каталогам в index.php:

/**
* The directory in which your application specific resources are located.
* The application directory must contain the bootstrap.php file.
*
* @see  http://kohanaframework.org/guide/about.install#application
*/
$application = '../kohana/application';

/**
* The directory in which your modules are located.
*
* @see  http://kohanaframework.org/guide/about.install#modules
*/
$modules = '../kohana/modules';

/**
* The directory in which the Kohana resources are located. The system
* directory must contain the classes/kohana.php file.
*
* @see  http://kohanaframework.org/guide/about.install#system
*/
$system = '../kohana/system';

В $HOME/vhosts/kohana/kohana/application/bootstrap.php укажем временную зону и локаль:

/**
* Set the default time zone.
*
* @see  http://kohanaframework.org/guide/using.configuration
* @see  http://php.net/timezones
*/
date_default_timezone_set('Asia/Novosibirsk');

/**
* Set the default locale.
*
* @see  http://kohanaframework.org/guide/using.configuration
* @see  http://php.net/setlocale
*/
setlocale(LC_ALL, 'ru_RU.utf-8');

Если в браузере откроем страницу по адрес http://kohana.ubuntu, то увидим сообщение о том, что каталоги для логов (logs) и кэша (cache)не доступны для записи. И некоторые опциональные модули php5 отсутствуют: cURL, mcrypt и GD2.

Фреймворк Kohana 3 не настроен

Откроем доступ на запись в каталоги cache и logs:

cd $HOST/vhosts/kohana/kohana/application
chmod 777 cache
chmod 777 logs

Установим отсутствующие библиотеки:

sudo apt-get install curl libcurl3 php5-curl php5-mcrypt php5-gd
sudo /etc/init.d/apache2 reload

Ещё раз откроем в браузере страницу по адрес http://kohana.ubuntu

Фреймворк Kohana 3 настроен

Фреймворк Kohana 3 установлен и настроен (за исключением базы данных). Подключение и конфигурирование модуля database рассмотрим по позже.

Другие части руководства:

Похожие по тематике посты:

Комментариев нет: