Php несколько дБ окружения с git & phpfog

У меня есть простое (без рамки) приложение php. Я хочу развернуть свое приложение в PhpFog. Проблема в том, что конфиг (host,dbname) отличается.

Как создать конфиг БД для среды разработки и производства?

2 ответа

Решение

Вы можете использовать переменные среды для этого. PHPFog предоставляет способ установки переменных среды в консоли приложения> Env. Вкладка переменных для вашего приложения.

Просто создайте все необходимые переменные среды как на локальном компьютере, так и на консоли приложения:

Пример:

Локальный компьютер: отредактируйте ваш .bash_profile

APP_HOST=localhost
APP_DATABASE=mydatabase

PHPfog App Console:

APP_HOST=production.mysqlserver.com
APP_DATABASE=proddatabase

Затем получите доступ к ним из вашего приложения php:

$db_host = getenv("APP_HOST");
$db_name = getenv("APP_DATABASE");

Вы можете поставить свой config.php в вашем .gitignore или другое решение - иметь две ветки в вашем локальном хранилище. Один, чтобы работать на месте, и один, чтобы подтолкнуть. Затем вы определяете специальную стратегию слияния:

Допустим, вы хотите исключить файл config.php

На ветке А:

Создайте файл с именем ".gitattributes" в том же каталоге, с этой строкой: config.php merge = ours. Это говорит git, какую стратегию использовать, когда mergin файл. При этом всегда сохраняйте свою версию, т.е. версия ветки, в которую вы сливаетесь.

Добавьте файл.gitattributes и зафиксируйте

На ветке B: повторите шаги 1-2

Попробуйте объединить сейчас. Ваш файл должен быть оставлен нетронутым.

Другие вопросы по тегам