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