добавить новый файл env в laravel для новой серверной среды - PullRequest
2 голосов
/ 11 июня 2019

Я принимаю проект от клиента, чтобы добавить функциональные возможности. Я совершенно новичок в разработке Laravel 5.5

В моем проекте уже 3 файла .env: .env .env.example .env.live

.env.live предназначен для производства (APP / ENV = production) и работает на AWS, остальные 2 для локального использования.

Теперь у меня есть новый сервер AWS EC2, база данных и т. Д., И мне нужен новый файл env для использования этих новых экземпляров. Допустим, я создаю новый файл .env с именем .env.dev

Как я могу переключаться между .env.dev и .env.live? Или как мне использовать этот .env.dev?

Ответы [ 3 ]

1 голос
/ 11 июня 2019

Если вы используете Elastic Beanstalk, перейдите в свою среду, затем щелкните пункт меню Configuration.Оттуда нажмите «Изменить» в разделе «Программное обеспечение».Появится страница, где вы можете добавить Свойства среды в виде пар ключ -> значение.

Затем вы можете удалить файлы .env.Эти свойства будут прочитаны вашим приложением Laravel так же, как оно читает файлы .env.

0 голосов
/ 11 июня 2019

На каждом сервере вам нужен только файл .env для выполнения. Если у вас есть три файла

  • .env
  • .env.live
  • .env.example
  • .env.other

Вы можете создать несколько файлов с помощью .env.*. Но когда вы выполните свое приложение, ваш файл .env будет выполнен.

Теперь, если вы хотите добавить новые дополнительные настройки в вашу среду, вам просто нужно добавить в .env файл. а также укажите все другие .env.* файлы и измените значения в соответствии с сервером.

Когда вы развернете свое приложение на живом сервере. Затем вам просто нужно переименовать файл .env.live в .env и настроить конфигурации для этого файла.

cp .env.live .env

Примечание: если у вас уже есть файл .env на вашем сервере (как вы сказали, ваше приложение уже находится на рабочем сервере.), Вам просто нужно добавить настройки окружения в этот файл.

0 голосов
/ 11 июня 2019

Вы также можете использовать символические ссылки

Просто удалите .env с обоих серверов и создайте символическую ссылку, например.

ln -s .env.live .env // for live

ln -s .env.dev .env // for dev server

Вы также можете сохранить эту команду в своем сценарии развертывания, если вы используете любой CI / CD.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...