我有一个应用程序正在运行,我希望为不同的子域提供不同的路由。这就是我的尝试:
app.get('*', function(req, res, next){
if(req.headers.host == 'sub.example.com') { //if it's a sub-domain
app.use('/', sub_routes);
}else{
app.use('/', routes);
}
next();
});
但这似乎并没有真正起作用。我收到404错误。当我在该块之外设置app.use('/', routes);
时,路由可以工作,但是我无法根据子域设置它们。我猜测问题是我正在尝试在已设置的路由中定义路由,但我不确定如何有条件地设置这些路由。我怎样才能做到这一点?
答案 0 :(得分:3)
我从来没有用过这个,但你试过https://www.npmjs.org/package/express-subdomain
它看起来完全覆盖了您的用例。
您也可以在每个子域使用不同的节点进程,并在nginx或Apache中执行适用的流程。