Фронт у меня запускается так Код (Text): window.addEventListener('DOMContentLoaded', () => { loadData(); }); Что вы называете "перед запуском фронта"? Сейчас изучаю статью на Хабре "Отдаем файлы эффективно с помощью PHP" https://habr.com/ru/post/151795/ Там дельные рекомендации или как в моем первом сообщении "дырявое корыто"? Спецкнопка для "Спасибо" это палец вверх?
Я загуглил "Фронт-контроллер". Получил в выдаче статью Реализация MVC паттерна на примере создания сайта-визитки на PHP https://habr.com/ru/post/150267/ Именно так у меня и сделано. Все запросы перенаправляются на одну точку входа, в которой анализируется строка запроса и вызывается тот или иной метод того или иного контроллера. Под "фронт-контроллером" понимается этот самый код, который я называю маршрутизатором. Я правильно понял ваше предложение? Если да, то теперь пытаюсь понять, что значит "перед запуском фронта".Может быть имеется в в виду "в первых строках фронт-контроллера"? Намекните следующий шаг, пожалуйста. вот мой index.php PHP: <?php ini_set('display_errors', 1); require_once 'application/bootstrap.php'; вот bootstrap.php PHP: <?php require_once 'core/model.php'; require_once 'core/view.php'; require_once 'core/controller.php'; require_once 'core/route.php'; // Starts a new php session if it's not started already. if (session_status() == PHP_SESSION_NONE) { session_start(); } Route::start(); // запускаем маршрутизатор А вот самое начало route.php PHP: <?php require_once 'application/models/model_database.php'; class Route { static function start() { $controller_name = 'mysite'; $action_name = 'index'; $routes = explode('/', $_SERVER['REQUEST_URI']); Дальше вызываются методы контроллеров "Перед запуском фронта" это где-то здесь?
Нет, в конфиге сервера. Это норма для многих сайтов. Даже если вам какие-то файлы нужно отдавать через скрипт, все равно наверное есть статик, который нужно отдавать всем подряд, а не только авторизованным. --- Добавлено --- Например, первый фрагмент тут: https://gency.ru/single-entry-point --- Добавлено --- Кстати, там в комментах было обсуждение: общедоступный статик либо размещается на другом хосте (всякие роботсы в расчет не беру), либо перед запуском фронта ставится условие «если не файл».
У меня в корне сайта есть такой .htaccess Код (Text): RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule .* index.php [L] Что надо поменять? Я правильно понимаю, что с такой настройкой существующие файлы и папки отдаются напрямую, а несуществующие обрабатываются моим фронтом? И как мне сделать доступ конкретным юзерам к указанным файлам?