【发布时间】:2016-01-03 04:34:50
【问题描述】:
在 Laravel 5.1 中,我正在尝试设置特定于环境的配置。在本地和开发环境中,我的应用程序结构类似于典型的颠覆分支。所以我并行安装了多个 laravel。示例:
http://dev.domain/trunk/public/...
http://dev.domain/branches/branch1/public/...
为了处理我的应用程序的所有这些不同版本,我不知何故需要一个与“基本路径”相关的动态配置,即域和公用文件夹之间的部分。
到目前为止,我所做的是将域名放入我的app.php。我正在努力解决的问题是如何或在哪里设置,这个动态部分取决于你在哪个子路径下调用你的应用程序。
我尝试的是设置一个配置文件config/myapp/app.php。那将是我的生产配置,所以那里的配置参数看起来像这样(因为在生产中我会有这个子目录):
url_path_to_public = ''
现在我想通过创建一个以我当前环境dev 命名的子文件夹将其级联到我的本地和开发环境,然后用动态表达式覆盖此参数。所以这看起来像:
'url_base_path_to_public' => strstr(str_replace($_SERVER['DOCUMENT_ROOT'], '', __FILE__), '/config/dev/myapp/app.php', true).'/public',
所以这个文件位于:
config/dev/myapp/app.php
由于某种原因,这个参数没有被使用,即使我在dev 模式下运行我的应用程序。我希望配置级联该参数。
另一种方法是直接在特定于环境的配置文件.env 中设置此信息,但我不能使用上述动态表达式。
我是否犯了级联错误以按预期工作?
【问题讨论】:
标签: php laravel configuration environment laravel-5.1