Laravel 配置多环境env文件

1、配置 env 文件夹

删除自带的.env 等文件
添加 env 文件夹
并添加.dev.env, .stage.env, .prod.env 文件

在这里插入图片描述

2、修改 app.php

在这里插入图片描述

//...
//...
//忽略上面代码
$app->singleton(
  Illuminate\Contracts\Debug\ExceptionHandler::class,
  App\Exceptions\Handler::class
);

/*
|--------------------------------------------------------------------------
| Return The Application
|--------------------------------------------------------------------------
|
| This script returns the application instance. The instance is given to
| the calling script so we can separate the building of the instances
| from the actual running of the application and sending responses.
|
*/
//**********************代码添加到这块*******************************//
/**根据服务器的hostname,加载不同的.env文件
*获取主机名 
*这里方式可以根据自己需求修改 可以根据自己域名区分.
*我的这里根据服务器的hostname进行区分
*dev环境hostname:dev-projectname-api-web
*stage环境hostname:stage-projectname-api-web
*prod环境hostname:prod-projectname-api-web
*/

# $hostname = gethostname();

$hostname = $_SERVER['SERVER_NAME'];

//自定义env文件路径
$app->useEnvironmentPath(realpath(__DIR__.'/../env'));
$strProd = 'prod';
$strStage = 'stage';
$strDev = 'dev';
if (strpos($hostname, $strProd) !== false) {
  //prod环境
  $app->loadEnvironmentFrom('.prod.env');
} elseif (strpos($hostname, $strStage) !== false) {
  //stage环境
  $app->loadEnvironmentFrom('.stage.env');
} elseif (strpos($hostname, $strDev) !== false) {
  //dev环境
  $app->loadEnvironmentFrom('.dev.env');
} else {
  //其他情况,走dev分支
  $app->loadEnvironmentFrom('.dev.env');
}
//**********************代码添加到这块*******************************//
return $app;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值