如何在单个服务器上提供多个前端 (AngularJS) 应用程序和 1 个后端 (Laravel) 应用程序?

How to serve multiple front-end (AngularJS) Apps and 1 back-end (Laravel) App on single server?

假设我想用 Laravel、(不提供任何 HTML 内容) 构建一个 API,它是域是 http://api.whatever.com

另一方面,我希望 2 不同的前端 AngularJS 应用程序使用 API (一个用于普通用户和其中一位管理员)

用户应用托管在 http://whatever.com and the admins app is hosted on http://admin.whatever.com and http://whatever.com/admin

我的两个问题是:

1) 在 Laravel(使用 NGINX)和 Laravel(作为独立应用程序可能由 NodeJS 托管)?

2) 由于很多原因,我强烈认为这些应用程序应该在 Laravel 之外构建和提供。如何在单个服务器上提供多个前端 (AngularJS) 应用程序和 1 个后端 (Laravel) 应用程序???我应该用 NodeJS 配置 NGINX 吗?!这里有什么技巧?

结果是最好的方法是配置你的服务器(在我的例子中是 NGINX)指向你所有的应用程序,这些应用程序可以放在你喜欢的任何地方。

工作原理如下:

文件夹结构可以如下:

- Project Root
-- Clients
--- Web
---- Admin
---- User
-- Server
--- Laravel Installation Here

使用 Homestead 的 NGINX 配置:

- map: whatever.pro
  to: /path-to-project-root/clients/web/user
- map: api.whatever.pro
  to: /path-to-project-root/server/public
- map: admin.whatever.pro
  to: /path-to-project-root/clients/web/admin/public