我正在从客户那里接管一个项目以添加功能。我对Laravel 5.5的开发相当陌生
我的项目中已经有3个.env文件: .env .env.example .env.live
.env.live用于生产(APP / ENV =生产)并在aws上运行,其他两个用于本地使用。
现在我有一个新的AWS EC2服务器,数据库等,并且需要一个新的env文件才能使用这些新实例。假设我创建了一个名为.env.dev的新.env文件
如何在.env.dev和.env.live之间切换?或如何使用此.env.dev?
答案 0 :(得分:1)
如果使用的是Elastic Beanstalk,请转到您的环境,然后单击“配置”菜单项。从那里单击“软件”部分中的“修改”。将出现一个页面,您可以在其中添加环境属性作为键->值对。
然后可以删除.env
文件。这些属性将由您的Laravel应用读取,就像读取.env
文件一样。
答案 1 :(得分:0)
您也可以使用符号链接
只需从两个服务器中删除.env
并创建一个类似的符号链接即可。
ln -s .env.live .env // for live
ln -s .env.dev .env // for dev server
如果使用任何CI / CD,也可以将此命令保留在部署脚本中。
答案 2 :(得分:0)
在每台服务器上,您仅需要执行<form [formGroup]="forma" (ngSubmit)="guardarReserva()" novalidate>
<mat-form-field appearance="outline" class="w-100">
<mat-label>Número de personas</mat-label>
<mat-select [(value)]="selectedPersona" (ngModelChange)="totalPrecio(selectedPersona)" formControlName="numeroPersonas">
<mat-option *ngFor="let persona of numeroPersonasTotal" [value]="persona">{{persona}}</mat-option>
</mat-select>
</mat-form-field>
<div class="d-flex justify-content-between">
<span>Precio por persona</span>
<span>USD {{precio}}</span>
</div>
<hr>
<div class="d-flex justify-content-between">
<span>Total</span>
<span>USD {{totalPrecio()}}</span>
</div>
<button type="submit" class="btn btn-primary btn-block py-3 mt-4">Reservar</button>
</form>
文件。如果您有三个文件
您可以使用.env
创建多个文件。但是,当您执行应用程序时,您的.env.*
文件将执行。
现在,如果要向环境中添加新的其他设置,则只需添加.env
文件。并指定所有其他.env
文件并根据服务器更改值。
何时将应用程序部署在实时服务器上。然后,您只需要将.env.*
文件重命名为.env.live
并为该文件设置配置即可。
.env
注意:如果您的服务器上已经有cp .env.live .env
文件(如您所说的应用程序已经在生产服务器上。),则只需将环境设置添加到该文件中。