Очень размыто все понимаю, именно по этому вопрос вышел таким же размытым...
В общем выяснилось что для адекватной проверки пользователя на авторизованность нужен acl и middleware, и вопрос как же это все реализовать и связать?
MVC, нужно проверить авторизован ли пользователь, если да, пропустить, если нет на страницу авторизации.
Как я понял, это нужно сделать до вызова контроллера и нужного экшена в роутере, но вот нагуглить как это все реализовать я не смог, в mvc фреймворках не разбираюсь что как и где, мб вы подскажете как
это все делается?
Например:
site .ru/controller/action - не нужно проверять, авторизован или нет, любого пропустить
site .ru/page/action - нужно проверить, если не авторизован, ссылка на сраницу авторизации
Как это все связать?
на сколько понял middleware для каждого роута нужен свой, но в тоже время глупо плодить их много, например 15 роутов, 12 из них нужна проверка на авторизованность
И можно как-нибудь реализовать 2 middleware для 1 роута, например в site .ru/admin/action - нужна проверка на авторизованность и на определенную группу пользователя (админ, модератор)
mvc не должен проверять авторизацию. mvc это способ организации сложных приложений. роутер это не приложение. Приложение это мозг робота, тело робота это сервисы для поддержания жизнедеятельности мозга. Роутер это часть тела.