У меня большой проект php, который использует два уровня конфигурационных файлов.
В папке моего проекта у меня есть файл default.config.ini, который загружается, а затем объединяется с файлом конфигурации для конкретного сайта.
В данный момент код читает переменную окружения PROJECT_CONFIG
, которая указывает на конкретный файл конфигурации. Это прекрасно работает для каждого разработчика, работающего на своей машине. Проблема возникает, когда мы перемещаем проект на сервер и хотим иметь три экземпляра одного и того же проекта: Dev, Stage, Live.
Теперь мы больше не можем использовать глобальную переменную env, поскольку она должна отличаться для каждого субдомена (проект настроен как dev.domain.com, stage.domain.com и www.domain.com).
Я рассмотрел преобразование серверной переменной HTTP_HOST
в имя env var и использование ее для установки правильной конфигурации (т. Е. Когда пользователь запрашивал страницу на dev.domain.com, код будет искать env var с именем dev_domain_com
), но я хотел посмотреть, что делают другие люди и что они рекомендуют.
Буду признателен за любой совет, заранее спасибо