Структура папок и файлов
Структура папок в Ирокезе выглядит следующим образом:
..
\- data
|- handlers
|- include
|- public
|- templates
|- tmp
|- userfiles
также в корневой папке находятся файлы:
..
\- .htaccess
|- loader.php
|- path.ini
Далее описано подробнее назначение и содержимое папок и файлов
data
Папка предназначена для хренения файлов с данными: конфиги, языковые файлы, и т.д. Структура папки следующая:
data
\- config
|- language
|- modules
Папка config содержит конфигурационные файлы:
data/
\- config/
\- cherokee.ini
|- languages.ini
|- site.ini
cherokee.ini - переменные конфигурации Чероки:
[kernel]
log_format = "[%year-%month-%day %hours:%minutes:%seconds] %message"
timezone = "Asia/Seoul"
log_errors = yes
show_errors = yes
trace_errors = yes
[database]
host = localhost
user = root
pass = ***
name = irokez
charset = utf8
В блоке [kernel] определены следующие переменные:
- log_format - формат для записи лог файла
- timezone - временная зона сервера
- log_errors - флаг (yes/no), определяет будет ли вестись лог ошибок
- show_errors - флаг, определяет будут ли отображены ошибки на сайте
- trace_errors - флаг, определяет будет ли выведен трейс ошибок
Блок [database] определяет переменные, необходимые для доступа к СУБД, а также кодировку базы данных.
languages.ini - содержит описание языков, доступные на сайте
site.ini - конфигурация сайта:
[default]
language = ru
[site]
root_section = home
root_group = root
root_folder = userfiles
gzip_enabled = no
single_lang = yes
Блок [default] определяет значения по-умолчанию для сайта. Переменная language - содержит язык, на котором, будем выводиться сайт по-умолчанию.
В блоке [site] содержатся следующие переменные:
- root_section - имя корневого раздела
- root_group - имя корневой группы
- root_folder - имя корневой папки
- gzip_enabled - флаг, определяет стоит ли использовать gzip сжатие при отправке страницы браузеру
- single_lang - флаг, определяет используется на сайте только один язык или же несколько
Папка language хранит описание языков, доступных на сайте. Подробнее о содержании конфиг файлов в разделе о локализации и мультиязычности.
Папка modules хранит описание моделей данных в XML формате. Подробнее о формате конфигов в разделе о работе с таблицами.
handlers
Папка handlers содержит обработчики страниц и блоков. Структура папки следующая:
handlers
\- dynamic
|- errors
|- static
|- tags
Каждая подпапка хранит определенный тип обработчиков:
- dynamic - обработчики страниц динамичного рутинга
- errors - обработчики страниц-ошибок
- static - обработчики страниц статического рутинга
- tags - обработчики блоков
include
Папка include содержит основные PHP скрипты:
include
\- cherokee
|- irokez
|- lib
|- patterns
- cherokee - фреймворк Чероки
- irokez - файлы Ирокезы
- lib - библиотека вспомогательных функций
- patterns - шаблоны обработчиков
public
Папка содержит файлы, доступные пользователям сайта непосредственно из браузера:
public
\- css
|- img
|- js
|- mohawk
- css - файлы стилей (CSS)
- img - изображения, картинки
- js - яваскрипт файлы (JS)
- mohawk - файлы JS-фреймворка Мохавк
templates
Данная папка содержит шаблоны страниц и различных элементов.
tmp
Папка содержит временные файлы.
tmp
\- cache
|- logs
|- upload
- cache - содержит кеш шаблонов, страниц, уменьшенных изображений
- email - неотправленные письма
- logs - логи
- upload - загружаемые файлы
userfiles
В этой папке хранятся файлы пользователя, загружаемые и управляемые через Ирокез.
.htaccess
Файл с настройками веб сервера Apache. Содержит правила для перенаправления запросов, а также закрывает доступ к конфиг файлам.
loader.php
Загрузчик системы: загружает Ирокез и выдает результат обработанного запроса.
path.ini
Конфиг файл, содержащий пути к папкам Ирокеза.