Файл запуска в SiteForeverCMS
Запуск системы стартует при обращении к скрипту index.php
.
По умолчанию скрипт работает с маршрутом index, который указывает на страницу по-умолчанию.
Для того, чтобы послать запрос на работу с другим маршрутом, нужно необходимый маршрут после index.php. Т.е., чтобы обратиться к странице about
, нужно выполнить запрос index.php/about
. Для страницы about/contacts
необходимо выполнить запрос index.php/about/contacts
. Чтобы сделать запросы более понятными человеку, можно воспользоваться настройками mod_rewrite, входящего в состав сервера apache, либо другим механизмом, выполняющим аналогичные действия у других веб-серверов.
Что же происходит при запуске системы?
<?php
//Файл index.php
//корень сайта
define('ROOT', __DIR__);
// автозагрузка классов через Composer
require_once 'vendor/autoload.php';
$app = new App('dev', true);
$app->run();
Константа ROOT служит для определения директории, где находится сайт. Это нужно для формирования и подключения статических файлов (js, css, img) из директории сайта. Т.к. директория с сайтом и директория, где находится CMS могут различаться, то определение этой константы является обязательным.
Поскольку для управления зависимостями используется Composer, то будем пользоваться его автозагрузчиком классов vendor/autoload.php
. Тем более, что на продакшене мы можем сгенерировать оптимизированную версию автолоадера.
Для настройки кастомных параметров для каждого окружения было принято решение использовать менеджер параметров Incenteev ParameterHandler . Это позволяет использовать композер как настоящий установщик команндой строки, который запрашивает параметры в интерактивном режиме во время установки сайта.
Конструктор приложения принимает 2 параметра:
- Псеводним окружения (как правило "dev", "test" или "prod");
- Значение
debug
, определяющее режим отладки приложения (может бытьtrue
илиfalse
).
После того, как все подключено, и создан экземпляр приложения, выполняем запуск.
Автор: keltanas
comments powered by Disqus