Установка Yii вручную
Если ваш сайт находится на виртуальном хостинге, то скорее всего доступа к консоли нет, поэтому выполнить команды composer не представляется возможным. В таком случае для установки вручную необходимо сначала скачать архив с файлами фреймворка с официального сайта: скачать Yii. Затем скачанный архив необходимо распаковать в папку сайта, которая доступна из веб (например, в корень сайта). После чего открыть файла "config/web.php" и добавить секретный ключ в значение "cookieValidationKey":// !!! insert a secret key - this is required
'cookieValidationKey' => 'какая-нибудь длинная строка',
Секретный ключ можно придумать самому, взяв md5 хеш от произвольной строки. Либо вовсе написав вычисление прям в этом файле
'cookieValidationKey' => md5('какая-нибудь длинная строка'),
Конечно, не стоит перекладывать на скрипт то, что можно сделать вручную. Лучше записать готовое значение:
'cookieValidationKey' => 'd223aa7ce30f10b77bbd9a1a22faefb0',
Обратите внимание, что нельзя менять секретный ключ в процессе работы проекта. Иначе у посетителей сайта куки файлы станут невалидными (сбросится авторизация и все остальные сохраненные данные на стороне браузера).
При установке фреймворка Yii через composer значение cookieValidationKey генерируется автоматически.
Если установка прошла успешно, то страница с приветствием "Congratulations!" станет доступна по адресу /basic/web/index.php
. Если этого не произошло, то нужно проверить требования фреймворка на странице /basic/requirements.php
.Далее для работы Yii на виртуальном хостинге необходимо изменить расположение файлов проекта и некоторые настройки. Первым дело необходимо перенести все Файлы и папки Yii на уровень выше корня сайта, чтобы к ним нельзя было обратиться напрямую. То есть переместите assets, commands и остальные файлы и папки на уровень выше. Затем переименуйте пупку "web" (если используйте Yii из шаблона "Basic") в название папки своего сайта, которая является для неё корнем. А её саму удалите.
Теперь обратитесь к сайту по адресу
/index.php
и сможете увидеть то, что могли открыть по адресу /basic/web/index.php
.Если требуется вынести системные файлы в какую-то другую папку, то необходимо будет прописать путь к ней в файле
web/index.php
:
require __DIR__ . '/../vendor/autoload.php';
require __DIR__ . '/../vendor/yiisoft/yii2/Yii.php';
$config = require __DIR__ . '/../config/web.php';
Две точки /../
означают переход на родительскую директорию. Все это делается с файлами с той целью, чтобы спрятать скрипты от прямого доступа из интернета. Чтобы в публичной части сайта находились преимущественно статичные файлы и PHP файл для обработки всех запросов к сайту (index.php).
Установка Yii через composer
Для установки фреймворка с помощью composer, выполните две команды в консоли:composer create-project --prefer-dist yiisoft/yii2-app-basic basic
Эта команда установит и настроит последнюю стабильную версию версию Yii. После чего можно перейти на страницу с приветствием "Congratulations!" по адресу /basic/web/index.php
. Если эта страница не отображается, то нужно проверить требования фреймворка на странице /basic/requirements.php
.