====== Шаг1. Создание каркаса проекта и запуск приложения ======
===== Структура папок и файлов =====
Рекомендуем для начала ознакомиться с подробными [[limb3_2007_4:ru:packages:web_app:app_installation|инструкциями по установке]] проекта на базе Limb3.
Скопируйте все содержимое из папки /skel пакета WEB_APP в директорию с вашим приложением, например my_app.
Итак, внутри папки вашего приложения будут следующие файлы и директории:
my_app
|
+-/src - здесь мы разместим собственно код приложения
|
+-/template - папка, где находятся шаблоны приложения
|
+-/settings - здесь располагаются конфигурационные файлы
|
+-/var - папка для временных/изменяемых файлов (кеши, компилированные шаблоны и прочее).
|
+-/www - здесь будет находиться DocumentRoot приложения
| |
| |-index.php
| |-.htaccess
| `-favicon.ico
|
|-setup.php
`-setup.override.php
Убедитесь, что веб-сервер имеет права на запись в папку var, которая находится в корне вашего приложения.
===== Настройка приложения. =====
==== Файл setup.php ====
Для инициализации приложения используется скрипт my_app/setup.php, в котором содержится различная конфигурационная информация.
==== Файл settings/db.conf.php ====
db.conf.php используется для хранения параметров подключения к базе данных. Для MySQL он будет выглядеть следующим образом:
'mysql://root:secret@localhost/limb_crud?charset=utf8');
?>
Для SQLite:
'sqlite://localhost/path/to/sqlite.db?charset=utf8');
?>
==== Файл settings/wact.conf.php ====
Это файл настройки шаблонной системы WACT, которую мы будем использовать для вывода данных.
0,
'forcecompile' => 1
);
?>
**forcescan** указывает, необходимо ли заново каждый раз составлять словарь тегов шаблонной системы (полезно только при создании новых тегов, чего мы делать сейчас не будем) - поэтому значение 0.
Следующий параметр - это **forcecompile**, который указывает, нужно ли заново компилировать шаблон при каждом обращении. Пока мы поставим значение 1, так как нам придется работать с шаблонами. На рабочем сайте, естественно, это значение необходимо поменять на 0.
===== Запуск проекта =====
Попробуйте зайти на страницу проекта. Вы должны увидеть страницу с надписью "Default main page." Если это так, значит все пока нормально.
===== Как работает приложение =====
DocumentRoot нашего приложения - это папка www.
==== Файл .htaccess ====
В папке www лежит файл **.htaccess** (см. ниже), который перенаправляет все запросы к index.php скрипту, если запрос не касается статичного контента (файла, директории и символической ссылки):
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-s
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^(.+)$ index.php?%{QUERY_STRING} [L]
==== Файл index.php ====
Cкрипт **www/index.php**, является единственной точкой входа в приложение:
process();
?>
По сути все приложение - это один единственный класс.
===== Что дальше? =====
Следующая страница: [[step2|Шаг2. Вывод новостей через шаблон]]