Yii2: Установка и настройка

51060b865f5ade014674f014b40cbdf0

Yii — это высокоэффективный основанный на компонентной структуре PHP-фреймворк для разработки масштабных веб-приложений. Он позволяет максимально применить концепцию повторного использования кода и может существенно ускорить процесс веб-разработки.

Основным способом получения фреймворка и расширений является Composer.

Composer (getcomposer.org) — популярный менеджер зависимостей для PHP. Описание зависимости своего проекта от каких библиотек позволит Composer их установит и поддерживать актуальность.

Установка потребует выполнение в консоли нескольких простых и пару подготовительных этапов.

curl -sS https://getcomposer.org/installer | php

Полученный файл копируем в директорию, где окружение командной оболочки пытается его найти

mv composer.phar /usr/local/bin/composer

Подготовительные этапы:

1) Перед установкой Yii, выполняем следующую команду:

composer global require "fxp/composer-asset-plugin:1.0.0-beta4"

2) Для увеличения лимитов обращения к github

Получаем API ключ по ссылке https://github.com/settings/applications

Could not fetch https://api.github.com/repos/jquery/jquery/commits/9434e03193c45d51bbd063a0edd1a07a6178d33f, 
enter your GitHub credentials to go over the API rate limit

2015-04-01 17-43-13 Authorized applications - Google Chrome

Добавляем ключ в настройки composer того пользователя, от которого идет установка:

#cat /root/.composer/auth.json
{
    "github-oauth": {
        "github.com": "secretAPIkey"
    }
}

Или можно в папке с auth.json выполняем команду:

composer config github-oauth.github.com secretAPIkey

Создаем свое приложение.

За основу возьмем шаблон «yiisoft/yii2-app-basic» или «yiisoft/yii2-app-advanced». Первый похож на первый Yii и служит для простых конфигураций, второй, ориентирован для разделения приложения на пользовательскую часть и модуль администрирования.

composer create-project --prefer-dist --stability=dev yiisoft/yii2-app-basic /path/to/yii

Composer самостоятельно скачает всё необходимое и выставит права на директории и файлы.

Все пакеты устанавливаются в директорию vendor. Настройки хранятся в composer.json.

В секции require файла composer.json — список зависимостей пакетов и их версий. «composer install» и «composer update» перечитает пакеты и обновит их автоматически.

2015-04-02 17-51-33 SuperPuTTY - svn.shurshun.ru

Для себя, после создания проекта я выношу директорию web на один уровень с фреймворком, и именно эту папку прописываю в качестве

При этом у меня несколько видоизменяется стартовый index.php

require(__DIR__ . '/../yii/vendor/autoload.php');
require(__DIR__ . '/../yii/vendor/yiisoft/yii2/Yii.php');
 
$config = require(__DIR__ . '/../yii/config/web.php');

Скорее всего все заработает с первой попытки. У меня же инсталляция на маке заработала с первой попытки, а вот под linux завести сразу не удалось. В логах web сервера всплывала ошибка:

PHP Fatal error:  Allowed memory size of 134217728 bytes exhausted (tried to allocate 1118067257 bytes) in /vendor/yiisoft/yii2/log/Logger.php on line 121

При этом, выделение дополнительной памяти проблему не решало.

Для решения необходимо запустить в консоли или лучше с браузера файл:

php requirements.php

Yii2 требует PHP 5.4 и несколько подключенных расширений. В моем случае обновлении php до последней версии и установка пакета «php-intl» решила проблему.

2015-04-02 18-38-19 home — 127.0.0.1 3388 — Подключение к удаленному рабочему столу

Вы можете оставить комментарий ниже.