我正在尝试将所有HTTP流量重定向到HTTPS,但是继续进行#34;重定向太多次"错误。它在本地计算机上运行正常,但是当我使用AWS服务器访问URL时出现此错误。
app.use(function(req, res, next) {
if(!req.secure) {
return res.redirect(['https://', req.get('Host'), req.url].join(''));
}
next();
});
app.get('/', function(req, res) {
res.sendFile(path.join(__dirname + pathToUse + '/html/index.html'));
});
答案 0 :(得分:1)
我使用的是ELB(弹性负载均衡器),以下代码有效:
app.use(function(req, res, next) {
if((!req.secure) && (req.get('X-Forwarded-Proto') !== 'https')) {
res.redirect('https://' + req.get('Host') + req.url);
} else {
next();
}
});