Front Controller - это шаблон проектирования, в котором один компонент вашего приложения отвечает за обработку всех запросов к другим частям приложения.Он централизует общую функциональность, необходимую для остальной части вашего приложения.Шаблонирование, маршрутизация и безопасность являются типичными примерами функций Front Controller.Преимущество использования этого шаблона проектирования заключается в том, что, когда необходимо изменить поведение этих функций, необходимо изменить только небольшую часть приложения.
В веб-терминах все запросы на домен обрабатываютсяединая точка входа (фронт-контроллер).
чрезвычайно простой пример только функции маршрутизации фронт-контроллера.Использование PHP, обслуживаемого Apache, будет выглядеть примерно так.Наиболее важным шагом является перенаправление всех запросов на фронт-контроллер:
.htaccess
RewriteEngine On
RewriteRule . /front-controller.php [L]
front-controller.php
<?php
if ($_SERVER['REQUEST_URI'] == '/help') {
include 'help.php';
} elseif ($_SERVER['REQUEST_URI'] == '/calendar') {
include 'calendar.php';
} else {
include 'notfound.php';
}