我必须拆分我的React应用程序使用NGINX子域吗?



我目前有一个单一的React应用程序3 "parts"一个网站的。NGINX作为反向代理处理请求,用户可以通过访问:
myDomain.com/...访问公共网站(公司的简单web存在)来访问web应用程序。
公司方的myDomain.com/company/...(员工在这里管理数据)。
公司客户myDomain.com/clients/...(客户登录,查看所购服务进度等)

相反,我想用子域访问不同的部分:
myDomain.com/...用于公共网站。
公司方company.myDomain.com/...
client.myDomain.com/...为客户端。

我的两个问题是:

  1. 是唯一的选择将我的单一反应应用程序分成3个不同的应用程序,并使用NGINX根据请求的子域指向每个应用程序?还有其他的解决方案吗?
  2. 我想避免拆分react应用,因为我想在应用的3个不同部分共享react组件和css样式。如果我拆分react应用,我想我必须复制react组件和css样式。这是真的吗?还是有一个更干燥的方法,如果我最终分裂我的反应应用程序?

谢谢!

查看Netlify子域路由。

对于Nginx,你可以从一个文件中提供它们,像这样:

server {
server_name myDomain.com
root /src/path/to/comp1
}
server {
server_name company.myDomain.com
root /src/path/to/comp2
}
server {
server_name client.myDomain.com
root /src/path/to/comp3
}