Я хочу создать проект с двумя отдельными репозиториями, для внешнего и внутреннего интерфейса. В качестве внешнего фреймворка я хочу использовать Angular 2+, а в качестве серверного фреймворка - Laravel. Я не хочу использовать представления Laravel. Могу ли я как-то раскрыть dist (build) Angular в проекте Laravel? Если да, то где мне разместить папку dist (ресурсы, общедоступные, в другом месте ..)? Что мне делать с файлом routes / web.php?
Я точно знаю, что вы можете сделать это в проектах Java, потому что это то, что мы делаем на работе, поэтому должен быть (не хакерский) способ.





Can I somehow expose Angular's dist (build) in Laravel's project?
Вы можете, но я бы порекомендовал вам этого не делать.
What do I have to do with routes/web.php file?
Вы можете удалить его, если все, что вы показываете, - это API, который используется интерфейсным приложением.
Два проекта не должны смешиваться. Храните каждую базу кода в отдельном репозитории и общайтесь с API только через HTTP-вызовы из вашего приложения Angular.
Почему вы этого не предлагаете? Есть ли проблемы с безопасностью? Если бы я все равно хотел это сделать, как мне это сделать?
AngularJS используется для создания одностраничных веб-приложений, которые берут на себя механизм маршрутизации браузера через API истории. Это напрямую противоречит тому, как типичное приложение Laravel обрабатывает маршрутизацию, и вызывает всевозможные головные боли, которых можно избежать, если проекты будут храниться отдельно.
Почему бы вам не попробовать с отдельным angular для передней части и отдельной задней частью в laravel.
Через пару месяцев
Я начал работать над проектом с технологиями Angular 5 на переднем конце и Laravel для бэкенда.
Насколько мне известно, интегрировать angular 2+ в любой другой фреймворк, кроме node js, довольно сложно.
Angular имеет свой собственный путь развития, как и laravel.
Я бы посоветовал вам приобрести отдельный экземпляр для каждого. Держите angular отдельно, а laravel - отдельно. Я не знаю, использовали ли вы эту стратегию раньше или нет, но вы создаете службу отдыха в laravel и используете ее в angular.
Таким образом, вы можете создать представление в angular и back-end в laravel и играть, используя службы отдыха.
Чтобы узнать больше о развертывании angular 2+ на сервере, вы можете посетить кликните сюда
Когда вы создаете проект angular, будет создана папка dist, которая может обслуживаться через статический веб-сервер, что в основном означает наличие этой папки dist на вашем сервере и наличие кода для статического обслуживания ее содержимого. Я не знаю php или laravel, но настроить статический веб-сервер с их помощью должно быть легко. В этом случае ваши представления будут отображаться в браузере. Если вы хотите отображать свои (угловые) представления на стороне сервера, вы можете использовать угловой универсальный, но, AFAIK, пока он доступен только для серверов node (javascript).