【问题标题】:Change environment file path in Lumen在 Lumen 中更改环境文件路径
【发布时间】:2019-09-25 00:57:38
【问题描述】:

我想将默认 .env 文件路径更改为另一个(用于生产)。

在基本 laravel 应用程序中,我可以通过编辑 bootstrap/app.php 文件并添加

$app->useEnvironmentPath(...);

但LumenApplication类实现不支持该方法

我通过

找到了公用文件夹路径编辑的解决方案
$app->bind('path.public', function() { 
    return __DIR__; 
});

在 public/index.php 中,但我找不到类似 path.env(ironment) 的东西。

请帮我解决这个问题

【问题讨论】:

    标签: laravel lumen


    【解决方案1】:

    我们使用符号链接指向特定的 .env 文件。我们在生产环境中有 .env.prod、.env.test 文件和指向 .env.prod 的 .env 符号链接。我们找到了这种解决方案。

    【讨论】:

    • 问题是实际上服务器上只有一个 .env 文件,并且它被放置在包含每个特定发行版本的目录的顶部。每个版本都链接到那个 .env 文件(在常见的 Laravel 应用程序中)。但是对于流明,我无法弄清楚如何做到这一点
    • 嗯。想我理解你的方法。将尝试并提供反馈
    • 感谢您的帮助。我的回答如下
    【解决方案2】:

    我很懒。 Lument bootstrap/app.php文件顶部没有看到下一行代码

    Dotenv::load(__DIR__.'/../');
    

    我们可以在那里设置任何我们喜欢的 .env 文件位置

    【讨论】:

      【解决方案3】:

      就我而言:

      $env = null;
      
      if(isset($_SERVER['HTTP_HOST']) && $_SERVER['HTTP_HOST'] == 'zenfy.co'){
          $env = '.env.prod';
      }
      
      (new Dotenv\Dotenv(__DIR__.'/../', $env))->load();
      

      P.s 在处理多台主机的时候可以换个开关...

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-12-07
        • 2011-02-02
        • 2011-05-19
        • 2021-02-11
        • 1970-01-01
        • 2015-08-27
        • 1970-01-01
        • 2016-07-27
        相关资源
        最近更新 更多