Laravel中不同URL的不同.env文件

时间:2016-12-18 20:12:33

标签: php laravel-5

我有一个运行在www.myapp.com的Laravel应用程序,它有自己的徽标,所有徽标文件位置都是在.env文件中定义的。

现在,我想在www.myapp.com上设置www.whitelabel.com应用程序的白色标签,并带有自己的徽标。

我需要有两个不同的.env文件,需要在运行时加载,例如 - 对于网址中的www.myapp.com,它应使用.myapp.env文件 - 对于www.whitelabel.com,它应使用.whitelabel.env文件。

这是否可以在Laravel 5.1中使用,如果是的话?

1 个答案:

答案 0 :(得分:0)

我在Laravel 5.1中使用Dotenv::load函数解决了它。在bootstrap/app.php

之前的return $app;中添加以下代码
$environmentPath = __DIR__ . DIRECTORY_SEPARATOR . '..' . DIRECTORY_SEPARATOR;
$environmentFile = null;
switch (getenv('HTTP_HOST')) {
    case 'whitelabel.com':
        $environmentFile = '.whitelabel.env';
        break;
}
if (!empty($environmentFile) && file_exists($environmentPath . $environmentFile)) {
    Dotenv::load($environmentPath , $environmentFile);
}

希望对某人有所帮助。