我为单个服务提供了不同的软件产品,需要将其部署到单个服务器上.通过create-react-app进行构建设置,客户端构建为react,而服务器运行Node.js和Express.
当我从服务器提供单个应用程序时,它按以下方式完成:
// App.js
// ...
// Entry point for data routes (API)
app.use('/data', indexRoute);
if(process.env.NODE_ENV !== 'development') {
app.use(express.static(path.join(__dirname, 'build-client')));
app.get('/*', function(req, res) {
return res.sendFile(path.resolve( __dirname, 'build-client' , 'index.html'));
});
}
Run Code Online (Sandbox Code Playgroud)
我希望能够从服务器提供多个应用程序.我该怎么办?
我尝试的是为资产连接不同的静态路径,并使用不同的名称分隔客户端,尽管它不起作用.像这样:
// App.js
// ...
// Entry point for data routes (API)
app.use('/data', indexRoute);
if(process.env.NODE_ENV !== 'development') {
app.use(express.static(path.join(__dirname, 'build-client')));
app.use(express.static(path.join(__dirname, 'build-admin')));
app.get('/client/*', function(req, res) {
return res.sendFile(path.resolve( __dirname, 'build-client' , 'index.html'));
});
app.get('/admin/*', function(req, res) {
return res.sendFile(path.resolve( __dirname, 'build-client' , 'index.html'));
});
}
Run Code Online (Sandbox Code Playgroud)
我也尝试过这种方式,但Express …