如何在任何在线服务器中部署 Spring 框架后端和 Angular 2 前端应用程序?

dev*_*dev 6 java spring-mvc web-deployment angular

如果我的做法有误,请指正。

在我的 Web 应用程序中,我没有使用 jsp 页面来开发用户界面。相反,我使用 html、css 和 Angular 2,并且前端项目结构与后端分离。

尽管我能够使用由 SpringMVC 后端提供服务的 Angular CLI 开发一个简单的项目。前端正在使用端口 4200,后端在端口 8080 上运行。我设法将请求从 Angular 2 获取并提供给 SpringMVC。在本地模式下,这些工作完美,现在我想让它们托管在实时服务器上。

如何分别发布 SpringMVC 后端和 Angular 2 前端但运行在同一个域上?我没有使用 SpringBoot,前端和后端也在不同的文件夹中。我不想将两者结合在同一个项目结构中并生成一个战争文件并进行部署。

开发 SpringMVC 后端和 Angular-2 后端并将它们部署在在线服务器中的最佳实践是什么?

Leo*_*ley 1

我发现最有效的是将 nginx 作为静态文件服务器和 spring 应用程序的转发代理运行。

通常我使用 angular-cli 代理使 /api/ 转到http://localhost:8080

这意味着对http://localhost:3000/api/ ** 的调用将传递到http://localhost:8080/api/ 。由于您位于同一域,我们可以简单地调用 /api/