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



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

现在我想在www.whitelabel.com上有一个带有自己徽标www.myapp.com应用程序的白标。

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

这在 Laravel 5.1 中是否可能,如果是,如何?

我在Laravel 5.1中使用Dotenv::load函数解决了它。在return $app;之前在bootstrap/app.php中添加以下代码

$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);
}

希望它对某人有所帮助。

最新更新