根据URL设置nodejs项目目录

Set nodejs project directory based on the URL

我目前正在通过节点 js 应用程序服务 angular1 应用程序。 我想使用此节点服务器从同一域为我的 angular1 应用程序和 angular2 应用程序提供服务。 我在节点 js 文件的 app.js 中有以下设置:

var staticDir = nodeEnv == 'development' ? path.join(__dirname, '/home/sovf/ang1/') : '/data/project/angular/app';

我的angular1项目目录在这里:/home/sovf/ang1/ 我的 angular2 项目目录在这里:/home/svof/ang2/

当 url 匹配 /ang2/*

时,如何配置 staticDir 以使用 '/home/svof/ang2/'

我已经尝试过为此寻找资源和节点配置,但找不到任何东西。任何人都可以在这里帮忙吗?

您可以创建一个 express.static 的新实例,它使用 /home/svof/ang2 作为根目录(它应该在其中查找静态资源),并且 "mount" 该实例位于 /ang2,所以它只会匹配以该前缀开头的请求:

app.use('/ang2', express.static(path.join(__dirname, '/home/svof/ang2')));