【发布时间】:2018-07-19 18:49:41
【问题描述】:
我四处搜索,找到了几种方法,但似乎没有一种方法特别适合我的需求,我无法让它们发挥作用。我的最新尝试如下,使用express-subdomain 和express 并尝试根据传入的子域为两个单独的AngularJS 应用程序提供服务。这段代码目前似乎为正确的应用程序提供服务,但我所看到的都没有包含任何 Angular 模块。浏览器控制台有很多'Uncaught SyntaxError: Unexpected token sub-domain 并提供第二个静态应用程序时。
我已经尝试过vhost,但结果类似。
server.js
app.use(subdomain('app1',express.static(__dirname + '/public/app1')));
app.use(subdomain('app2',express.static(__dirname + '/public/app2')));
require('./app/routes')(app); // configure our routes
app.listen(port);
routes.js
app.get('*', function(req, res) {
var firstIndex = req.get('host').indexOf('.');
var subdomain = req.get('host').substr(0,firstIndex).toLowerCase();
if (subdomain === 'app1'){
res.sendFile(root + '/public/app1/views/index.html');
}else if (subdomain === 'app2'){
res.sendFile(root + '/public/app2/views/index.html');
}else{
res.sendFile(root + '/public/app1/views/notfound.html');
}
});
【问题讨论】:
标签: angularjs node.js express subdomain