У нас есть сайт Laravel 4.2, базирующийся в США, который мы рассчитываем на whitelabel в Канаде, а затем в Великобритании. У меня есть локальная и тестовая среда для обоих (staging vs canada_staging и т. Д.), И проблема, с которой я сталкиваюсь с производством, состоит в том, что у нас много условий, которые проверяют, является ли среда производственной (if (App::environment() === 'production')
например). Я мог бы использовать production
для обоих, но каждый сайт имеет свою собственную конфигурацию и языковые файлы (например, вместо штатов у них есть провинции). Есть ли простой способ преодолеть эту ситуацию?
Да, вы можете создать файл app/bootstrap/environment.php
на каждом сервере и определите env .:
<?php
return 'production-us;
В app/bootstrap/start.php
в обнаружении env. раздел добавить это:
$env = $app->detectEnvironment(function ()
{
return require __DIR__.'/environment.php';
});
У вас будет уникальный env. на каждом сервере самым простым способом.
Связанный пост Вот.
Других решений пока нет …