如何使用express删除子域

时间:2014-12-20 10:51:24

标签: node.js express

我有一个基于Node / Express4的网站,它有两个子域www.awesome.comapi.awesome.com

这很好。

我还有一个临时站点,运行一个单独的Node实例,在staging.awesome.com运行。我想要实现的目标是在请求生命周期的早期foo.staging.awesome.com路由到foo.awesome.com,因此我的暂存网站在www.api.之间完全相同作为我的生产网站的方式。

我尝试在app.js中尽早添加以下内容:

app.use('/', function(req, res, next) {
  var hostname = req.hostname;
  var newHostname = hostname.replace(/staging\./g, "");
  req.hostname = newHostname;

  console.log(newHostname);
  console.log(req.hostname);

  next();
});

newHostname正是我想要的,但似乎我不能像这样在请求上设置主机名。日志显示req.hostname尚未更改。

所以,我的问题是。如何覆盖请求中的主机名,或者如何有条件地删除最后一个子域。有效:)

0 个答案:

没有答案