вторник, 30 июля 2013 г.

Фреймворк Yii: первые шаги

Решила поизучать Yii с помощью этой книги. Для начала пришлось установить PHP & Apache. Оказалось, что тут описан "путь Воина", при выборе которого исходники Apache компилируются на компьютере пользователя. Это полезно, когда нужно настроить всякие тонкости. Мне же пока тонкости не нужны, поэтому можно воспользоваться LAMP и написать:

sudo apt-get install lamp-server^

Далее в книге предлагалось скачать yii, скопировать ее в web-accessible folder и проверить, удовлетворяются ли в системе минимальные требования для ее работы. Насколько я поняла, такой папкой является /var/www. Но в эту папку оказалось не так-то просто скопировать файлы. Поэтому пришлось копировать через терминал:

sudo cp -r /home/natalia/yii-1.1.2.r2086/* /var/www

Далее, проверила выполнение минимальных требований, набрав в строке браузера

127.0.0.1/requirements/index.php

(то, что localhost по адресу 127.0.0.1 увидела в сообщениях при установке LAMP)

Минимальные требования были выполнены. Далее в книге предлагалось воспользоваться инструментом yiic, который автоматически создает demo-приложение. Но если писать так, как указано в книге, никак не получалось. Ответ нашелся в документации по этой версии, скачанной с сайта yii framework. Воспользовалась одним из альтернативных предложенных в документации способов. Перешла в папку /var/www/framework и набрала

php yiic.php webapp /home/natalia/demo.

Потом попыталась открыть http://localhost/demo/index.php и увидела ошибку 404.

Оказалось, что нужно было настроить еще несколько вещей (спасибо Дмитрию).

1. Для удобства и пущей безопасности было решено хранить веб-проекты в папке /home/natalia/projects, а yii framework поместить в папку /home/natalia/projects/lib/yii. Настроить права к папке projects: sudo chmod -R 777 /home/natalia/projects.

2. Изменить права к папке apache, чтобы без проблем можно было сохранять внесенные изменения: sudo chmod -R 777 /etc/apache2

3. Настроить DocumentRoot в файле /etc/apache2/sites-available/default.txt DocumentRoot - указывает apache на то, откуда брать файлы для сайтов. В файле default вместо папки /var/www в паре мест написать /home/natalia/projects.

3. В demo-приложении в файле index.php поправить строку (путь к yii)
$yii = dirname(_FILE_).'../lib/yii/framework/yii.php';

4. Перезапустить apache

sudo service apache2 stop
sudo service apache2 start

После этого демо-приложение заработало :)



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

Отправить комментарий