如何通过一台快速服务器部署不同的 React Web 应用程序?

How to deploy different react web apps through one express server?

我想知道是否有一种简单的方法来部署在不同路由上为不同应用程序提供服务的快速服务器。 (不是前端 and and api。)因此,例如,假设我想 运行 一个“Hello World”。应用程序通过有限数量的路由(如 home/landing 页面),然后通过特定的 URL 路由部署“我的应用程序”应用程序,每个 React 应用程序都使用反应路由器。这可能吗?如果可以,怎么办?

你应该为每个 react-app 在 package.json 中提供 homepage, 例如


__
 |_ app1/
 |_ app2/
 |_ server/

对于 app1 package.json homepage: "/app1"

对于 app2 package.json homepage: "/app2"

快递服务器代码:

app.use("/app1", express.static(path.resolve(__dirname, "../app1/build")))
app.use("/app2", express.static(path.resolve(__dirname, "../app2/build")))

app.get("/app1", (_req, res) => {
   res.sendFile(path.resolve(__dirname, "../app1/build/index.html"))
})

app.get("/app2", (_req, res) => {
   res.sendFile(path.resolve(__dirname, "../app2/build/index.html"))
})

我希望我能帮上忙

编辑:

您还可以为 BrowserRouterHashRouter

提供 basename 道具

对于应用程序 1 basename="app1" 和应用程序 2 basename="app2"