PHP фреймворк Yii2 использует версию PHP не ниже 5.4. Рассмотрим как установить его на OpenServer (как установить OpenSever).
Заходим в настройки сервера и выставляем версию как показано на рисунке
Следующий этап - установка yii2 через composer.
Создаем папку для сайта. У меня OpenServer установлен в корне диска D. Я создаю папку по пути D:\OpenServer\domains\yii.loc я создал папку yii.loc.
Запускам консоль OpenServer (Контекст OpenServer - Дополнительно - Консоль). В консоли переходим в подготовленную папку yii.loc.
Я это делаю командой: cd domains\yii.loc.
Далее выполняем команды (второй командой запускается или вторая, или третья строка):
composer global require "fxp/composer-asset-plugin:~1.1.1"
composer create-project --prefer-dist yiisoft/yii2-app-basic basic
или
composer create-project --prefer-dist yiisoft/yii2-app-advanced advanced
Первой командой добавляется в Composer плагин Asset для загрузки Bootstrap, jQuery и т.д.
Следующая команда установит непосредственно сам фрейворк. Если Вы запустите первую команду, из 2-х, то установится приложение basic (более простое приложение). Если Вы запустите вторую строку, то установится приложение advanced (более сложное). Отличие basic от advanced в том, что advanced приложение имеет 3 части console,frontend и backend. Зачастую advanced приложение используется для более серьезных проектов.
В процессе установки приложения может появится ошибка такого типа:
Could not fetch https://api.github.com/repos/francoispluchino/composer-asset-plugin/zipball/bae7a15712e9339a2439aeca3b7c5ecf65b087d1, please create a GitHub OAuth token to go over the API rate limit
Head to https://github.com/settings/tokens/new?scopes=repo&description=Composer+on+ADMIN+2016-03-21+1216
to retrieve a token. It will be stored in "C:/Users/ADMIN/AppData/Roaming/Composer/auth.json" for future use by Composer.
Token (hidden):
Эта ошибка дает нам знать что превышено количество обращений к github и нужно авторизироваться. Если у Вас нет аккаунта на github, то нужно зарегистрироваться. Если есть, то заходим Personal access tokens, создаем новый token, галочки как на картинке
Нажимаем Сохранить. И далее копируем полученный token (желательно его где-то сохранить).
Теперь у нас все готово. Возвращаемся в нашу консоль и вводим команду
composer config -g github-oauth.github.com <Ваш_Token>
И теперь заново перезапускаем процесс установки.
Сейчас установка должна пройти нормально.
Переходим в директорию с установленным фреймворком
cd advanced
И выполняем команду инициализации приложения
init
Выбираем [0] Development и вводим yes (Development - это значит разработка, будут показываться все ошибки, а Production - отключение выведения ошибок и т.д.)
Теперь можем перенести наш проект на уровень выше, то есть скопироваться все файлы из папки advanced в папку yii.loc.
Следующим шагом надо создать базу данных в phpMyAdmin (я назвал базу yii с кодировкой utf8_general_ci). В OpenServer phpMyAdmin открывается по пути:
http://127.0.0.1/openserver/phpmyadmin/index.php
После создания базы нужно прописать параметры для подключения базы. Эти настройки прописываются в файле common/config/main-local.php.
'components' => [
'db' => [
'class' => 'yii\db\Connection',
'dsn' => 'mysql:host=localhost;dbname=yii2',
'username' => 'root',
'password' => '',
'charset' => 'utf8',
], и т.д...
Теперь в консоли прописываем команду:
yii migrate
Фреймворк установлен. Fronend часть (та часть, которую будут ) доступна по адресу:
http://yii.loc/frontend/web/
Backend часть (администраторская):
http://yii.loc/backend/web/
Plut
Спасибо Вам огромное, очень просто и доступно объяснено.
Zipper
Когда ввожу это 'composer config -g github-oauth.github.com '
говорит syntax of the command is incorrect.
admin
Вы токен сгенерировали? Команда должна выглядеть так: composer config -g github-oauth.github.com Bаш_Token, где Bаш_Token - это токен полученный на github
Zipper
Да, я сгенерировал token скопировал и поставил вместо ваш_token, но такая ошибка выходит
Zipper
Почему-то не могу ничего писать в поле token(hidden): . От чего может быть?
admin
Имеется ввиду на сайте github?