Хостинг украинский: установка и настройка Yii2 |
|
Установка и настройка фреймворка Yii2 описаны в официальной инструкции, а так же опубликовано очень много разнообразных статей, однако я не нашел той инструкции, которая помогла бы мне инсталлировать и настроить эту площадку от начала до конца.
В момент установки я столкнулся с определенными вопросами, ответы на которые находились в различных местах на просторах Сети. После долгих плясок с бубнами я настроил этот фреймворк так как желал. Свой опыт настройки я опишу здесь, в надежде что кому-нибудь это упростит жизнь.

Топ 5 хостингов нашего рейтинга
полный список рейтинга хостингов
Установка Composer на надежный хостинг украинский
Поскольку опыта настройки сервера или работы в консоле ОС Linux у меня немного, первая проблема возникла уже при инсталлировании Composer. На сервере инсталлированы несколько разных версий языка программирования php, и по умолчанию все команды консоли выполняет именно php 5.2.17. Но Composer требует именно версию php 5.3.2 или выше.
Решение было следующим:
php -r «readfile ('https://getcomposer.org/installer');» | php5.6
Обычные настройки сервера не позволяют сделать Composer выполняемым, запускать напрямую, в связи с чем запускаете его посредством интерпретатора PHP. Не забывайте указывать и версию языка программирования php:
php5.6 composer.phar install
Начальный этап сделан — Composer полностью установлен.
Установка фреймворка Yii2 на хостинг украинский
Вначале все по инструкции: инсталлируете расширение с названием Composer Asset, управляющее всеми зависимостями пакетов npm и bower.
php5.6 composer.phar global require «fxp/composer-asset-plugin:~1.1.1»
Это нужно сделать лишь один раз, далее можно инсталлировать Yii2 пару раз при помощи нижеописанных команд.
Теперь следует выбрать какую ставить версию шаблона Yii2: Advanced или Basic. Basic — это простое приложение, в Advanced есть разделение на административную и публичную часть (backend и frontend) и создана полностью готовая модель (и таблица базы данных) User.

Инсталлирование фреймворка Yii2 Basic
В первую очередь, следует рассмотреть инсталлирование Basic, поскольку она проще, установка происходит при помощи специальной команды:
php5.6 composer.phar create-project --prefer-dist yiisoft/yii2-app-basic mysite
Где Mysite — это каталог, в который надо инсталлировать Yii2. Он быть должен пустым (в случае если при образовании каталога для веб-ресурса на сервере был образован в автоматическом режиме подкаталог с названием Public_html, его следует удалить). Composer запросить может логин и пароль от Github (в связи с ограничением на число запросов у Github).
Отступление про общую структуру каталогов во фреймворке и на сервере. Рассматриваемый shared хостинг украинский устроен так, что файлы веб-сайтов находятся в каталоге с названием Mysite/Public_html. Все файлы в каталоге под названием Public_html полностью доступны из веба.
Общая структура фреймворка Yii2 Basic включает в себя несколько каталогов и файлов, которые желательно сделать из веба недоступными, чтобы хорошо защитить от нелегального доступа данные и код, а также директория Basic/Web, которая используется как корневая папка веб сервера. Для нужной структуры создайте специальную ссылку:
cd mysite
ln -s web public_html
Отныне весь контент каталога Basic/web — наш интернет-сайт, а остальные файлы фреймворка просто недоступны из Сети.
Фреймворк Yii2 версии Basic полностью установлен, можно открыть веб-ресурс в веб-браузере.
Настраивание фреймворка Yii2 Basic
Откройте небольшой файл, который находится в Config/Db.php и замените все параметры на правильные для вашей БД. После 'charset' => 'utf8', вы можете указать префикс табличек таким образом: 'tablePrefix' => 'myprefix_' (если ряд сайтов используют одну БД).
После этого настраиваете все ссылки. Маршрутизация по-умолчанию имеет такой вид: /Index.php?r=site%2Fabout. Следует перевести ее в этот вид: /Site/About. Для чего необходимо создать файл, который находится в Web/.htaccess с контентом как советуют в официальном руководстве:

Веб-сервер теперь знает, что все запросы следует направлять на файл под названием Index.php, и указывать Index.php в url нет потребности. Дальше в файле под названием Config/web.php нужно добавить (или раскомментировать) в $config = ['components'] после 'db' => require (__DIR__ . '/db.php'), такие строки

EnablePrettyUrl — генерировать эстетичные ссылки, ShowScriptName — не писать в ссылке названия скрипта Index.php. Теперь вы можете зайти на наш веб-ресурс и обязательно посмотреть, что он применяет уже красивые ссылки вроде /site/about.
Хорошо, с фреймворком Yii2 Basic вы уже разобрались, теперь можете переходить и к версии Advanced.
Инсталлирование Yii2 версии Advanced
Начало инсталлирования площадки Yii2 версии Advanced совершенно аналогично версии Basic:
php5.6 composer.phar create-project --prefer-dist yiisoft/yii2-app-advanced mysite
Yii2 инсталлирован. В его папке Mysite уже появились каталоги и файлы Yii2 в частности Backend для админки и Frontend для так называемой публичной части интернет-сайта. Но в Frontend/Web нет специального файла с именем index.php, поэтому дальше выполняете специальную команду INIT для полной инициализации шаблона, формируете символьную ссылку и для Frontend:
cd mysite
php5.6 init
ln -s frontend/web public_html
Отныне Frontend доступен по главному адресу интернет-сайта. Дальше настраиваете Backend :
cd frontend/web
ln -s .../.../backend/web admin
Теперь Backend полностью доступен в каталоге /Admin.
Настраиваете эстетичные адреса во Frontend:
- Создаете в папке /Frontend/Web такой же файл .Htaccess как и в шаблоне версии Basic.
- В конфиге файла, который находится в каталоге /Frontend/Config/Main.php нужно прописать то же самое.
Те же операции выполняете для Backend. Замечаете, что файла с именем Db.php нет в каталоге Config.
Настройки для доступа к БД в версии Advanced в обязательном порядке указываются в файле, который находится в каталоге Common/Config/Main-local.php. Там следует прописать тоже, что в файле под названием Db.php в Basic. Затем используете специальную миграцию:
php5.6 yii migrate
В БД образуются таблички user и migration.
Итак, Yii2 инсталлирован, настроен и полностью готов к работе.
Почитать еще:
Отзывы о хостинге:









| #
Сделал все по инструкции у меня ошибка 403 You don't have permission to access / on this server.
Reply