Конфигурация приложения
Все конфигурационные файлы Deep-CMS находятся в папке application/config/* и хранятся в формате JSON. Внутри конфигурационных файлов разрешены комментарии, отступы и переводы строк, так же, как и в полноценном javascript. Это очень удобно.
Основной файл конфигурации приложения:
application/config/main.json
В этом файле доступны следующие опции:
Блок site
default_keywords и default_description
Устанавливают глобальные значения для метатегов страниц Keywords и Description соответственно. Значения будут использованы для тех страниц, у которых не указаны индивидуальные значения метатегов.
check_unused_params
Это экспериментальная функция. Внимание! Если эта опция включена, то будут проверяться ВСЕ GET-параметры на факт их использования. Т.е. если в строку запроса были переданы параметры: /path/do/name.html?a=2&b=3 то ожидается что в системой будут использованы оба (a и b), в противном случае будет выброшено исключение о наличии неиспользованных параметров.
default_language
Устанавливает глобальное значение по умолчанию для языковой локали.
default_timezone
Устанавливает смещение времени по умолчанию в часовых поясах в формате +04:00.
theme
Устанавливает используемую по умолчанию тему сайта.
domain
Привязка к домену. Эта опция обеспечивает защиту от CSRF-атак. Если порт не стандартный и отличается от 80-го при использовании http протокола, или от 443-го при использовании https протокола, его необходимо указать вместе с доменом в формате «www.domain.tld:port»
protocol
Протокол доступа к домену сайта. Указывается в контексте предыдущей опции. Как правило это http или https.
admin_tools_link
Указывает на URL административного раздела. Допускаются URL вида:
- /Мама/Мыла/Раму
- /admin
- /привет/VSEM/из/kosmosa
Требуется наличие ведущего и отсутствие завершающего слеша. Глубина вложенности виртуальных папок не ограничена. Все символы должны быть урлокодированы, т.е. фактически ссылка:
/Мама/Мыла/Раму
должна иметь вид:
/%D0%9C%D0%B0%D0%BC%D0%B0/%D0%9C%D1%8B%D0%BB%D0%B0/%D0%A0%D0%B0%D0%BC%D1%83
admin_resources
Указывает на URL от корня сайта до папки содержащей статические файлы необходимые для работы административного раздела. Это файлы стилей, изображения, javascript-сценарии и прочие файлы.
Блок application
version
Указывает на версию приложения.
name
Указывает на полное название приложения, включая тип сборки приложения.
support_email
Указывает на email технической поддержки приложения.
source_domain
Указывает на домен удаленного сервера с которого система получает компоненты для установки, а так же их обновления.
Блок system
debug_mode
Опция включает/выключает режим отладки приложения во время разработки. Указывается в булевых значениях.
cache_enabled
Опция включает/выключает возможность кеширования страниц. Указывается в булевых значениях.
write_log
Опция включает/выключает логирование всех действий пользователей на сайте. Указывается в булевых значениях.
log_file_max_size
Указывает максимально возможный размер лог-файла в байтах для ротации логов. Если при записи лог-файла его размер превышает указанное значение, то файл архивируется, а на его месте для записи логов создается новый пустой лог-файл.
block_prefetch_requests
Опция блокирует попытки предзагрузки контента браузерами.
default_output_context
Указывает контекст вывода по умолчанию.
cookie_expires_time
Опция устанавливает время хранения COOKIE аутенфикации на клиентской стороне. Значение устанавливается целым числом означающим количество секунд с момента установки COOKIE аутенфикации. Максимальное значение ограничено числом 2147483646.
session_name
Опция устанавливает имя сессии, которое будет использовано в качестве имени сессионной COOKIE на стороне клиента, в том числе и в качестве префикса для COOKIE аутенфикации. Значение имени, для совместимости с некоторыми клиентскими программами, должно состоять только из латинских букв в нижнем регистре без пробелов или каких либо других символов.
max_group_priority_number
Опция указывает на размер диапазона приоритетов групп пользователей, который обеспечивает иерархическую структуру распределения прав доступа пользователей. Максимальное значение ограничено числом 1000.
Блок cached_pages
Данный блок является обычным javascript-массивом, в котором через запятую перечисляются стандартные паттерны регулярных выражений разбираемых в php, описывающие правила кеширования генерируемого контента. Внимание! Требуется дополнительное экранирование обратного слеша.
Блок layouts
parts
Указывает относительный путь к папке «частей» шаблонов (header, footer, etc..)
header
Указывает относительный путь к файлу «шапки» шаблонов активной темы сайта.
footer
Указывает относительный путь к файлу «подвала» шаблонов активной темы сайта.
Блок output_contexts
Блок описывает массив доступных и включенных контекстов вывода, где каждый контекст является объектом вида:
{"name": "название_контекста_вывода", "enabled": true}
Первое свойство «name» указывает на название контекста вывода из четырех возможных: «html», «xml», «json», «txt». Второе свойство «enabled» указывает на доступность контекста в данной конфигурации. Значение доступности контекста вывода устанавливается в булевых значениях.
Блок db
В данном блоке описываются доступы подключения к базе данных.
host
Указывает на имя хоста или IP-адрес сервера базы данных.
port
Указывает на открытый порт сервера базы данных.
prefix
Указывает на префикс таблиц в базе данных. Это экспериментальная опция и в настоящий момент не используется.
name
Указывает на имя базы данных используемой в приложении.
user
Указывает на пользователя сервера базы данных, от имени которого будут совершаться все действия на сервере базы данных.
password
Указывает на пароль пользователя сервера базы данных.
connection_charset
Указывает на кодировку соединения с сервером базы данных.