首页 > 解决方案 > 具有多个配置的多个生产环境

问题描述

这是我第一次在 Laravel 7 中创建一个新的 Web 应用程序,它将部署在多个服务器上。每个服务器都有自己的环境变量。

根据我之前在 Zend 框架中的经验,所有变量都在一个配置文件中的某个段落下。首先,存在所有环境通用的变量。之后,每个环境都有自己的覆盖变量。在 index.php 中设置了具体的环境,没有部署 index.php。因此,它非常易于使用并可以不断部署更改。

我的问题是,在 Laravel 中实现此目的的最佳解决方案是什么。所以,我需要某种可以被继承并可能在某些部分被覆盖的基本配置。如果没有类似的东西,你有什么建议?

标签: phplaraveldeploymentenvironment-variableslaravel-7

解决方案


通常,配置继承是一件棘手的事情。如果您对所使用的配置没有完整的了解,您最终可能会像向错误用户发送推送通知的公司之一。

Laravel 的构建方式可以在 config 文件夹中设置默认配置并使用该.env文件覆盖。这就是 Laravel 的用途,所以我建议这样做。

或者,如果您愿意,您可以拥有一个文件.env文件夹,然后在部署时将正确的文件移动到根目录。


推荐阅读