Конфигурация окружения⚓︎
Grav теперь имеет возможность расширять мощные возможности конфигурации для различных сред, чтобы поддерживать различные конфигурации для сценариев разработки, постановки и производства.
Среды до Grav 1.6 хранились в папке user/
. Grav 1.7 перемещает среду в user/env/
, чтобы упростить обслуживание среды. Настоятельно рекомендуется переместить все среды в это новое место на существующих сайтах.
Автоматическая настройка окружения⚓︎
Это означает, что вы можете внести столько изменений конфигурации в среду, сколько необходимо. Хорошим примером этого является Панель отладки. По умолчанию новая панель отладки отключена в основном файле system/config/system.yaml
, а также в файле переопределения пользователя:
Если вы хотите включить её, можно сделать это через файл user/config/system.yaml
, однако лучшим решением может быть enabled для вашей среды разработки при доступе через localhost, но disabled на вашем рабочем сервере.
Этого можно легко добиться, переопределив этот параметр в файле:
где localhost
- это имя хоста среды (это хост, который вы вводите в браузере, например, http://localhost/your-site
), а ваш файл конфигурации содержит:
Точно так же вы можете включить конвейерную обработку ресурсов CSS, Link, JS и JS-модулей (объединение + минификация) только для вашего рабочего сайта (user/env/www.mysite.com/config/system.yaml
):
Если к вашему производственному серверу можно получить доступ через http://www.mysite.com
, вы также можете указать конфигурацию, специфичную для этого производственного сайта, с помощью файла, расположенного по адресу user/env/www.mysite.com/config/system.yaml
.
Конечно, вы не ограничены изменениями в system.yaml
, вы можете фактически переопределить любую настройку Grav вsite.yaml
или даже в любой конфигурации плагина!
Если вы используете Планировщик, помните об этом, используя среду localhost
и, следовательно, её конфигурацию.
Переопределения плагинов⚓︎
Переопределение YAML-файла конфигурации плагина — это просто тот же процесс, что и переопределение обычного файла. Если стандартный файл конфигурации находится в:
Затем вы можете переопределить это с помощью параметра, который отменяет только определённые параметры, которые вы хотите использовать для локального тестирования:
С конфигурацией:
mailer:
engine: smtp
smtp:
server: smtp.mailtrap.io
port: 2525
encryption: none
user: '9a320798e65135'
password: 'a13e6e27bc7205'
Переопределения тем⚓︎
Вы можете переопределить темы примерно таким же образом:
Может быть переопределено для любой среды, скажем, на каком-то производственном сайте (http://www.mysite.com
):
Конфигурация среды на основе сервера⚓︎
Начиная с Grav 1.7, можно настроить среду, используя конфигурацию сервера. В этом сценарии использования вы устанавливаете переменные среды с сервера или из сценария, который запускается до Grav, чтобы выбрать среду, которая будет использоваться.
Самый простой способ установить среду - использовать GRAV_ENVIRONMENT
. Значение GRAV_ENVIRONMENT
должно быть действительным именем сервера с доменом или без него.
В следующем примере для локального хоста выбирается среда разработки (development
):
Пользовательские пути к среде⚓︎
Начиная с Grav 1.7, вы также можете изменить расположение локаций. Есть две возможности: либо вы настраиваете общее расположение для всех сред, либо определяете их одну за другой.
Пользовательское расположение для всех сред⚓︎
Если по какой-то причине вас не устраивает расположение по умолчанию user/env
для вашей среды, его можно изменить, используя переменную окружения GRAV_ENVIRONMENTS_PATH
.
Значение GRAV_ENVIRONMENTS_PATH
должно быть существующим путем в GRAV_ROOT
. Не используйте завершающую косую черту.
В следующем примере все среды будут расположены в user/sites/GRAV_ENVIRONMENT
, где GRAV_ENVIRONMENT
либо автоматически определяется, либо устанавливается вручную в конфигурации сервера:
Пользовательское местоположение для текущей среды⚓︎
Иногда может быть полезно иметь настраиваемое местоположение для вашей среды
Значение GRAV_ENVIRONMENT_PATH
должно быть существующим путем в GRAV_ROOT
. Не используйте завершающую косую черту.
В следующем примере только текущая среда будет расположена в user/development
:
Обратите внимание, что GRAV_ENVIRONMENT_PATH
отделен от GRAV_ENVIRONMENT
, поэтому вы также можете захотеть установить имя среды, если вы не хотите, чтобы оно автоматически совпадало с текущим именем домена.
Дальнейшая настройка⚓︎
Среды можно настраивать гораздо больше, чем описано на этой странице.
Для получения дополнительной информации перейдите на следующую страницу: Настройка мультисайта.