Создаю приложение на AngularJS, бекенд - Symfony2. Будет авторизация (вход для сотрудников). Задумался - как хранить и отдавать шаблоны, которые подгружает Angular. Вижу 2 варианта:
1. Можно просто создать директорию app и в ней вместе со скриптами хранить и html-шаблоны. Тогда они отдаваться будут быстро (минуя php-фреймворк), и весь фронтенд будет в одной директории. Минус - их можно будет скачать и без авторизации, то есть при желании можно слить все приложение - хоть и без данных, но все равно не приятно и опасно.
2. Отдавать шаблоны через фреймворк. Тогда всегда будет проверяться авторизация, но придется для каждого шаблона создавать роут, и кроме того, фронтенд будет размазан по разным местам.
Поделитесь опытом, какой вариант вы используете и почему?
Я, при деплое, создаю энное количесво минифицированных сборок из исходного кода и шаблонов(в $templateCache), в зависимости от ролей пользователя. Авторизация - форма с сабмитом, которая при успешной авторизации отдает необходимый файл.
Выдачу файла со скриптами можно сделать nginx c заголовком X-Accel-Redirect
Хм, даже не скажу где посмотреть. Готовых вариантов не находил, писал скрипт сборки сам. Многое зависит от вашего workflow.
Начните с документации, а дальше в зависимости от ваших потребностей - написать скрипт сборки или, возможно, воспользоваться grunt