В этом разделе рассмотрим разные нюансы при работе с системой.
1. Первое, что стоит отметить, это конфигурация приложения. В целом, приложение в ygin конфигуририуется согласно принятым в yii правилам.
Для основного приложения, приложения-админки, и консольного приложения в системе есть базовые конфигурационные файлы.
При работе с конфиг-файлом в проекте (protected/config/) добавляются новые параметры в базовый конфигурацинный файл, или переопределяются параметры по умолчанию:
- project.php - переопределяет базовый конфиг frontend-приложения;
- local.php - конфиг включается во все приложения (frontend, backend, консольное), и содержит настройки, специфичные для сервера, на котором запущен сайт. Как правило, этот конфиг не включается в git-репозиторий, и содержит настройки БД (которые отличны на продакшен-сервере и сервере разработки). Файл обязательно должен быть создан, иначе система будет считать, что сайт не установлен и предложит установку;
- backend.php - переопределяет базовый конфиг backend-приложения;
- console.php - переопределяет базовый конфиг консольного приложения.
Базовые конфигурационные файлы можно посмотреть в папке ygin/config/
, для системы управления - ygin/modules/backend/config/mainConfig.php
2. Frontend и backend приложения по умолчанию имеют несколько компонент для отладки приложения. Это debug-панель (yii2-debug), доступная при включенной отладке и для определенных ip-адресов (127.0.0.1 и 192.168.0.*), и логеры:
- запись запросов на изменение (update, delete, insert)
- "долгие" запросы также протоколируются
- отправка e-mail сообщений разработчику в случае ошибок (работает при выключенном debug-режиме)
Конечно, все эти вещи можно конфигурировать стандартными для yii способами. Например, сконфигурируем логер по отправке сообщений и отключим логирование медленных запросов:
return array( 'components'=>array( 'log'=>array( 'routes'=>array( 'CSSlowLogRoute'=>array( 'enabled' => false, ), 'email_error' => array( 'emails' => 'info[at]ygin.ru', 'sentFrom' => 'robot[at]ygin.ru', 'authUser' => 'robot[at]ygin.ru', 'authPassword' => 'pass', 'host' => 'smtp.ygin.ru', ), ), ), ), );
3. Отдельно необходимо упомянуть о модулях, в названиях которых присутствует префикс "ygin.", например модуль ygin.news.
Такие модули являются системными и входят в стандартную поставку ygin. Модули с такой приставкой располагаются в папке ygin/modules/
О том как переопределять такие модули, их модели и контроллеры, читайте в отдельном разделе документации.
4. Часто необходимо склеить основной домен domain.ru с www.domain.ru. Это можно осуществить правкой файла .htaccess блока "www processing". В будущем эта можно будет настроить из системы управления.
Описание структуры