Yii2-app-advanced的配置文件优先级

发布时间 2023-05-23 10:41:07作者: 浪里小韭菜

Yii2高级模板中支持多套环境配置,并且有优先级重写覆盖

默认有两种dev和prod,在应用目录 environments  下

Yii2中的config配置文件(main.php 和 params.php)具有极大的灵活配置,结合配置文件的加载顺序

1、使用约定

 - 应用目录下有 config/main.php 和 params.php 是一个全职全集

   目录下的 *-local.php 和 environments 目录下的 *-local.php 都是他们的子集

 - 应用目录下的 config/main-local.php 和 config/params-local.php 不入代码块,通过 init 指令初始化生成

 - environments  目录下的 main-local.php 和params-local.php 要入代码块,方便在部署各个环境使用

 

2、部署步骤

 - init 执行初始化自动部署,即复制 environments 目录下对应的配置文件到各个应用下面

  - 本地个人开发使用,则改动目录下的 *-local.php

  - dev 和 test 环境, init 初始化部署完毕后,通常不需要修改;

  - prod 生成环境修改配置

  - 数据用户名称和密码

  - 应用的key

  - 测试 X-Test-*  属性值

三、优先级 顺序,从上到下依次是下面覆盖上面

  main 配置顺序

  1、common\config\main.php

  2、common\config\local-main.php

  3、backend\config\main.php   // common中优先最低,其他目录项目优先级都高于它,如 backend 、frontend、api

  4、backend\config\local-main.php

  Params 配置顺序

  1、common\config\params .php

  2、common\config\local-params .php

  3、backend\config\params php   // common中优先最低,其他目录项目优先级都高于它,如 backend 、frontend、api

  4、backend\config\local-params .php

  注意: main的文件会覆盖params文件