小编los*_*rld的帖子

所有路由的HTTPS重定向node.js/express - 安全问题

我最近在节点/快速服务器上设置了HTTPS.我已成功设法使用以下代码重定向所有路由以使用https:

// force https redirect
var https_redirect = function(req, res, next) {
  if (req.secure) {
    if(env === 'development') {
      return res.redirect('https://localhost:3000' + req.url);
    } else {
      return res.redirect('https://' + req.headers.host + req.url);
    }
  } else {
    return next();
  }
};

app.get('*', function(req, res, next) {
  https_redirect(req, res, next);
});
Run Code Online (Sandbox Code Playgroud)

这似乎工作正常.但是,因为在我有几个问题之前我还没有涉足过这个问题:

  1. 这是从http重定向到https的理想方式吗?
  2. 如果用户使用http路由,则在重定向之前,任何人都可以使用sslstrip之类的东西来嗅出会话信息.

节点:v0.8.2; 表达:v3.05

https node.js express

17
推荐指数
1
解决办法
2万
查看次数

标签 统计

express ×1

https ×1

node.js ×1