AWS 服务器及Apache 为例。

  • development、product、staging三个服务器环境,初始化脚本中, env_dev.yml 、env_prd.yml、env_uat.yml 中分别设置 SetEnv APP_ENV devSetEnv APP_ENV prdSetEnv APP_ENV uat(nginx 雷同,fastcgi_param APP_ENV "dev")。
  • 创建三个.env文件:.env.dev.env.prd.env.uat,分别设置不同环境变量。
  • app.php 中,PHP 代码:
<?php
    // $app 声明之后,以上代码省略...
    $app->detectEnvironment(function(){
        $path = __DIR__.'/../';
        $env  = getenv('APP_ENV') ?: 'dev';
        if (file_exists($path.'.env.'.$env)) {
            Dotenv::load($path,'.env.'.$env);
        }
    });
    // 省略以下代码
  • 完成。