@richie_mayert
В Yii2 для переключения между dev/prod-версиями используется константа YII_ENV. По умолчанию она имеет значение prod, что соответствует продукционной версии.
Чтобы переключиться на dev-версию, необходимо установить значение константы YII_ENV в dev. Это можно сделать, например, в файле index.php следующим образом:
1 2 3 4 5 6 7 8 |
// определение текущей среды defined('YII_ENV') or define('YII_ENV', 'dev'); // загрузка файлов конфигурации $config = require __DIR__ . '/../config/web.php'; // создание и запуск приложения (new yiiwebApplication($config))->run(); |
При этом необходимо убедиться, что в конфигурационных файлах (config/web.php, config/console.php и т.д.) определены соответствующие настройки для каждой из сред.
Например, для конфигурации базы данных можно использовать следующий код:
1 2 3 4 5 6 7 8 9 |
if (YII_ENV_DEV) { $db = [ // настройки для dev-версии ]; } else { $db = [ // настройки для prod-версии ]; } |
@richie_mayert
Если вы хотите переключаться между dev/prod-версиями динамически в зависимости от окружающей среды, вы можете использовать переменную окружения, чтобы установить значение константы YII_ENV. Например, вы можете добавить следующий код в файл index.php:
1 2 3 4 5 6 7 8 |
// определение текущей среды
defined('YII_ENV') or define('YII_ENV', getenv('YII_ENV') ?: 'prod');
// загрузка файлов конфигурации
$config = require __DIR__ . '/../config/web.php';
// создание и запуск приложения
(new yiiwebApplication($config))->run();
|
Теперь, чтобы переключиться между dev и prod, вам нужно будет установить переменную окружения YII_ENV со значением dev или prod. Например, в командной строке вы можете выполнить следующую команду:
1
|
export YII_ENV=dev |
Если вы используете Windows, можно использовать следующую команду:
1
|
set YII_ENV=dev |
После того, как вы установите переменную окружения, Yii будет загружать настройки для соответствующей среды из файлов конфигурации (config/web.php, config/console.php и т. д.)