====== Шаг1. Создание каркаса проекта и запуск приложения ====== ===== Структура папок и файлов ===== Рекомендуем для начала ознакомиться с подробными [[limb3: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. Вывод новостей через шаблон]]