laravel 多环境部署

本文介绍如何在Laravel项目中根据不同环境加载特定的.env文件,包括开发(dev)、测试(test)和生产(prod)环境。通过在php.ini中设置env变量来区分环境,并在bootstrap/app.php中依据env值加载相应的配置。
摘要由CSDN通过智能技术生成

转载地址   http://xuwenzhi.com/2016/07/31/laravel%E4%B9%8B%E5%BC%80%E5%8F%91%E3%80%81%E6%B5%8B%E8%AF%95%E5%92%8C%E7%94%9F%E4%BA%A7%E7%8E%AF%E5%A2%83%E5%8C%BA%E5%88%86/


不同环境加载自己的.env.文件
这里面的.env.
文件延伸开来就是.env.dev、.env.test和.env.prod,比如开发环境会自动加载.env.dev,依此类推,那么如果是这样的话,不同环境的机器又怎么知道加载哪个文件呢?其实这里面还是耍了点小聪明,别忘了我们有php.ini

1.在php.ini中追加一行配置
当然开发、测试和生产环境中env所对应的值也需要不一样

//开发环境
env=dev
//测试环境
env=staging
//生产环境
env=production

2.加载不同的配置文件
在bootstrap/app.php文件中添加如下判断,在这里将通过获取php.ini中的env的值,然后从而加载不同的配置文件。

//...省略
$env = get_cfg_var('env');
$env = !empty($env) ? $env : 'production';
if(!defined('APP_MODE')){
    define('APP_MODE', $env);
}
$app->loadEnvironmentFrom('.env.'.$env);

return $app;

3.新建.env.dev、.env.staging和.env.production





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值