美文网首页
lumen 根据虚拟域名多环境配置

lumen 根据虚拟域名多环境配置

作者: IT513 | 来源:发表于2019-02-26 18:08 被阅读0次

lumen 5.7 利用 Vance Lucas 的 PHP 库 DotEnv 管理配置文件,默认配置文件为 .env
当前多环境配置是根据虚拟域名后缀切换不同的配置文件:

  • 本地开发环境(localhost),访问域名后缀 .z
  • 开发环境(develop),访问域名后缀 .d
  • 测试环境(testing),访问域名后缀 .t
  • 生产环境(production),访问域名后缀 .com

修改文件 bootstrap\app.php

image.png

修改为:


try {
    //根据域名后缀配置切换不同环境
    $httpName = $_SERVER['HTTP_HOST'];  //当前域名
    $suffix = substr(strrchr($httpName, '.'), 1);   //获取域名后缀
    switch ($suffix) {
        case false:
            //shell 命令环境配置(没有域名后缀)
            $environment = '.env.localhost';
            break;
        case 'z':
            //本地环境
            $environment = '.env.localhost';
            break;
        case 'd':
            //开发环境
            $environment = '.env.develop';
            break;
        case 't':
            //测试环境
            $environment = '.env.testing';
            break;
        default:
            //正式环境
            $environment = '.env.production';
            break;
    }

    (new Dotenv\Dotenv(dirname(__DIR__),$environment))->load();
} catch (Dotenv\Exception\InvalidPathException $e) {
    //
}


新建对应的配置文件,配置完成。


image.png

附配置文件说明:

//环境
APP_NAME=Lumen  //应用名称
APP_ENV=local    //运行环境名称
APP_KEY=    // 敏感信息加密密钥,可使用 php artisan key:generate 重新生成。
APP_DEBUG=true  // 是否启用调试模式  正式环境修改为 false。
APP_URL=http://localhost   //项目访问域名
APP_TIMEZONE=UTC    //时区
//日志
LOG_CHANNEL=stack  
LOG_SLACK_WEBHOOK_URL=
//数据库配置
DB_CONNECTION=mysql   //使用的数据库
DB_HOST=127.0.0.1    //链接地址
DB_PORT=3306      //端口
DB_DATABASE=homestead  //数据库名称
DB_USERNAME=homestead  //用户名
DB_PASSWORD=secret    //用户密码
//缓存
CACHE_DRIVER=file      // 缓存驱动,默认使用文件作为缓存。
QUEUE_CONNECTION=sync  // 队列驱动,默认使用同步模式。



运行对应的环境命令 添加参数 --env=(指定环境 默认为 localhost)

php artisan migrate --env=develop
php artisan db:seed --env=develop

请注意:

当设置了 APP_ENV 环境变量时,当运行 Laravel 的 Aritsan 终端命令之前,比如迁移命令(./artisan migrate)、启动队列侦听器(./artisan queue:listen)等等,均需要在终端中 APP_ENV 环境变量。

在nginx/apache运行环境下配置APP_ENV 参考:

https://segmentfault.com/a/1190000004634251

相关文章

网友评论

      本文标题:lumen 根据虚拟域名多环境配置

      本文链接:https://www.haomeiwen.com/subject/qslzyqtx.html